NodeMCU V3
У меня возникают проблемы со чтением данных из последовательного порта при использовании программ, отличных от ArduinoIDE. Я создал цикл, который постоянно отправляет данные с микроконтроллера на порт компьютера.
В ArduinoIDE все работает нормально, но когда я пытаюсь использовать другие программы, такие как Putty, QtSerialMonitor, ProcessingGrapher, SerialPlot, PCScope и другие, я не могу получить данные, хотя соединение с портом установлено. Иногда какие-то данные единоразово появляются, если я быстро переключаюсь между подключением и отключением порта (Проклациваю кнопку подключиться\отключиться). Однако, если я сначала включу монитор порта в ArduinoIDE, а затем выключу его, некоторые программы начнут нормально работать. В частности, QtSerialMonitor работает после включения и выключения монитора порта в ArduinoIDE. Но если я переподключу ESP8266 к компьютеру, мне нужно
снова включить и выключить монитор порта в ArduinoIDE, чтобы QtSerialMonitor мог читать данные.
Я пробовал использовать разные компьютеры, но все аналогично.
Данные видны только в ArduinoIDE. Или, как я упоминал ранее, если после подключения ESP8266 к компьютеру я хоть раз подключался к монитору портов в ArduinoIDE, то некоторые программы (QtSerialMonitor) после этого будут нормально работать. А вот в других программах, например Putty, чтение данных вообще не работает.
Я не пытаюсь одновременно подключиться к порту через другую программу. Я делаю это последовательно.
1. Включаю монитор в ArduinoIDE.
2. Выключаю монитор в ArduinoIDE.
3. Включаю в другой программе.
Если я не выполнил эти действия перед подключением в других программах (QtSerialMonitor), то они не будут отображать никаких данных. Только если я не включу и выключу монитор в ArduinoIDE.
Если после подключения микроконтроллера к компьютеру я еще ни разу не включал монитор порта в ArduinoIDE то в логе подключения (QtSerialMonitor) я вижу картину которую я показал на первом вложении. "Serial port opened. COM7, 9600, Data8, NoParity, OneStop, NoFlowControl, DTR: 1�>>" И больше ничего. В других программах вообще 0 реакции. Только если не проклацивать кнопку как я упоминал раньше.
Я спросил разработчика ProcessingGrapher об этой проблеме, потому что это было первое приложение, которое я попробовал после ArduinoIDE, и оно не работало должным образом. Я предоставил скрины, код и описание проблемы, но похоже проблема не в софте, как я думал, а в моем ESP8266. Пожалуйста, прочитайте это здесь:
Также я писал на другой форум по ардуино, но видимо ответа я там не получу: https://forum.arduino.cc/t/help-reading-from-the-port-is-not-functioning-properly/1112695/7
У меня возникают проблемы со чтением данных из последовательного порта при использовании программ, отличных от ArduinoIDE. Я создал цикл, который постоянно отправляет данные с микроконтроллера на порт компьютера.
В ArduinoIDE все работает нормально, но когда я пытаюсь использовать другие программы, такие как Putty, QtSerialMonitor, ProcessingGrapher, SerialPlot, PCScope и другие, я не могу получить данные, хотя соединение с портом установлено. Иногда какие-то данные единоразово появляются, если я быстро переключаюсь между подключением и отключением порта (Проклациваю кнопку подключиться\отключиться). Однако, если я сначала включу монитор порта в ArduinoIDE, а затем выключу его, некоторые программы начнут нормально работать. В частности, QtSerialMonitor работает после включения и выключения монитора порта в ArduinoIDE. Но если я переподключу ESP8266 к компьютеру, мне нужно
снова включить и выключить монитор порта в ArduinoIDE, чтобы QtSerialMonitor мог читать данные.
Я пробовал использовать разные компьютеры, но все аналогично.
Данные видны только в ArduinoIDE. Или, как я упоминал ранее, если после подключения ESP8266 к компьютеру я хоть раз подключался к монитору портов в ArduinoIDE, то некоторые программы (QtSerialMonitor) после этого будут нормально работать. А вот в других программах, например Putty, чтение данных вообще не работает.
Я не пытаюсь одновременно подключиться к порту через другую программу. Я делаю это последовательно.
1. Включаю монитор в ArduinoIDE.
2. Выключаю монитор в ArduinoIDE.
3. Включаю в другой программе.
Если я не выполнил эти действия перед подключением в других программах (QtSerialMonitor), то они не будут отображать никаких данных. Только если я не включу и выключу монитор в ArduinoIDE.
Если после подключения микроконтроллера к компьютеру я еще ни разу не включал монитор порта в ArduinoIDE то в логе подключения (QtSerialMonitor) я вижу картину которую я показал на первом вложении. "Serial port opened. COM7, 9600, Data8, NoParity, OneStop, NoFlowControl, DTR: 1�>>" И больше ничего. В других программах вообще 0 реакции. Только если не проклацивать кнопку как я упоминал раньше.
Я спросил разработчика ProcessingGrapher об этой проблеме, потому что это было первое приложение, которое я попробовал после ArduinoIDE, и оно не работало должным образом. Я предоставил скрины, код и описание проблемы, но похоже проблема не в софте, как я думал, а в моем ESP8266. Пожалуйста, прочитайте это здесь:
Reading from the port is not functioning properly. · Issue #35 · chillibasket/processing-grapher
Hello! I need help. No matter how much I try, I can't get your program to read data from the port properly. The problem is that, firstly, she does not see any streaming incoming data, and secondly,...
github.com
C++:
long last = 0L;
void setup() {
Serial.begin(9600);
}
void loop() {
if (millis() - last >= 200) {
last = millis();
Serial.println(analogRead(A0));
}
}
Вложения
-
2.8 KB Просмотры: 5