Странноватенькая работа SerialPort-а
- Войдите на сайт для отправки комментариев
Прошу помощи у знающих: подскажите кто может знает какие тонкости?
Исходные дынне:
Arduino (тестировал как Uno, так и Nano) - конечно же китайские клоны, локальный компьютер соединенный по USB c Arduino, Web сервер Denver с которого идет посылка в Serial Port с помощью SerialPHP и нативным способом записи fwrite
у меня есть скетч:
void setup() { Serial.begin(9600); pinMode(3, OUTPUT); pinMode(4, OUTPUT); led3(); } void led3(){ int sz = 100; digitalWrite(4, 1); delay(sz); digitalWrite(4, 0); delay(sz); } void led2(){ int sz = 100; digitalWrite(3, 1); delay(sz); digitalWrite(3, 0); delay(sz); } void loop() { } void serialEvent(){ while (Serial.available()){ int ch = Serial.read(); led3();led3(); } }
После загрузки скетча при отправки символов из PHP при помощи SerialPHP, да и просто методом
fwrite($file, chr(116));
все работает.
Но! стоит выключить(а потом включить) питание Arduino или открыть монитор порта, адекватная работа заканчивается. И при посылке данных через serial port происходит насколько я понимаю перезагрузка Arduino и спасает только загрузка скетча заново, после этого все начинает работать нормально
подскажите кто может знает какие тонкости?
А неадекватная - это какая? Ардуина песни поёт и со стола падает?
ардуина не моргает светодидом в положенном месте
в то время когда после загрузки скетча, срабатывает и моргает
elfar, я думаю, то, что Вы написали в serialEvent, должно быть в loop. А led2 можете вообще выкинуть.