Не отвечает com порт с arduino ide для платы nodemcu
Написал простой код для потенциометра, но com порт на "0" не отвечает, да и на любые другие числа тоже. Помогите решить проблему.
#define UD 2 // выходы к которым подключен модуль
#define INC 3
#define CS 4
void up(){ // поднимает ползунок в верх на 1 ступень
digitalWrite(UD, HIGH); // на U/D подаем единицу
digitalWrite(INC, HIGH); // и на INC тоже
digitalWrite(CS, LOW); // включаем микросхему
delayMicroseconds(1); // ждем
digitalWrite(INC, LOW); // дергаем вход INC
delayMicroseconds(1);
digitalWrite(INC, HIGH);
delayMicroseconds(1);
///digitalWrite(INC, LOW); // в этом случаи положение ползунка записано не будет
digitalWrite(CS, HIGH); // выключаем микросхему и записываем положение в EEPROM
}
void down(){ // опускаем ползунок в верх на 1 ступень
digitalWrite(UD, LOW);
digitalWrite(INC, HIGH);
digitalWrite(CS, LOW);
delayMicroseconds(1);
digitalWrite(INC, LOW);
delayMicroseconds(1);
digitalWrite(INC, HIGH);
delayMicroseconds(1);
digitalWrite(CS, HIGH);
}
void setup() {
Serial.begin(9600);
pinMode(INC, OUTPUT);
pinMode(UD, OUTPUT);
pinMode(CS, OUTPUT);
digitalWrite(CS, HIGH); // выключаем микросхему
}
void loop() {
if (Serial.available()) { // проверяем пришло ли что в Serial
if (Serial.read() == '0'){ // если пришел 0 // опускаем ползунок
Serial.print("-1");
up();
}
else { // иначе поднимаем
Serial.print("+1");
down();
}
}
}
Ответы (1 шт):
Автор решения: is007
→ Ссылка
Исправьте вот так и все будет работать:
if (Serial.available() > 0)
Единственное при таком исполнении Вашего кода, после выполнения up он выполнит и down.