Купил ребенку конструктор-робота на колесах. Пытаемся вместе разобраться, и сразу же уперлись в проблему - моторы не крутятся. Контроллер работает нормально, вольтметр показывает на всех входах драйверов ожидаемые уровни, но на выходах - пусто. Драйверы поменял, эффекта ноль, к другим моторчикам подключал - тоже без результата. Видимо, что-то не догоняю. ESP32 NodeMCU
ESP32 NodeMCU, подключаю так:
13/GPIO32 → DIR
12/GPIO33 → STEP
11/GPIO25 → EN#
+5V → SLEEP#, RESET#, M2
+15V → VMOT
0 → GND, GNDLOGIC
(в инструкции другие GPIO используются, но там неаккуратненько получается, фу)
Проверяю таким скетчем:
int
LDIR = 32,
LSTP = 33,
RDIR = 27,
RSTP = 14,
EN = 25;
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
pinMode(LDIR, OUTPUT);
pinMode(LSTP, OUTPUT);
pinMode(RDIR, OUTPUT);
pinMode(RSTP, OUTPUT);
pinMode(EN, OUTPUT);
digitalWrite(RDIR, HIGH);
digitalWrite(LDIR, HIGH);
digitalWrite(EN, LOW);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
for (int i = 0; i < 2000; i++) {
digitalWrite(RSTP, HIGH);
digitalWrite(LSTP, HIGH);
delayMicroseconds(10); // импульс STEP 10 мкс
digitalWrite(RSTP, LOW);
digitalWrite(LSTP, LOW);
delay(1); // пауза 1000 мкс
}
digitalWrite(LED_BUILTIN, LOW);
delay(500); //Гасим инерцию движения.
digitalWrite(EN, HIGH); // Отключаем мотор.
}
Вольтметром проверяю - на STEP и DIR все приходит (3.3V, проверял с другими задержками), на SLEEP# и RESET# 5V, на VMOT 15V. На выходах драйвера - ноль. Моторы лежат не дышат.
Что я делаю не так?