Работа с Serial, не передаёт данные.

W4rl0ck
Offline
Зарегистрирован: 18.03.2013

Доброго времени суток.

Столкнулся со следующей проблемой, я соединил роутер TP-Link MR3020 с Arduino Mega по UART, через плату согласования уровней на транзисторах и тут пошли странности, если подсоеденить на Serial(0) т.е. основной ардуны то всё работает и данные передаются, когда попытался подсоеденить на любой из Serial1, Serial2,Serial3 ни приём ни передача не идёт.

Если это важно питается всё от USB одного ноутбука, начинаю грешить на то что ардуина соеденина по USB, но перерыв форумы и спецификации, выяснил что это вроде не должно влиять, прошу помочь тех кто сталкивался с подобными проблемами.

Вот такой код работает:

1void setup() {               
2Serial.begin(9600);
3delay(3000);
4}
5 
6void loop() {
7Serial.println("Test message");
8delay(2000);
9}

А вот этот нет:

1void setup() {               
2Serial1.begin(9600);
3delay(3000);
4}
5 
6void loop() {
7Serial1.println("Test message");
8delay(2000);
9}

Соеденено всё верно, тут уж 100%!

maksim
Offline
Зарегистрирован: 12.02.2012

Как вы определяете что "всё работает и данные передаются" ?

brokly
brokly аватар
Offline
Зарегистрирован: 08.02.2014

У tp-link нужно подтягивать к плюсу какую то из ног, то ли rx, то ли tx. В противном случае наблюдается уйма глюков.

W4rl0ck
Offline
Зарегистрирован: 18.03.2013

Проверял через монитор порта TP-Link.

Нога подтянута, но я думаю что тут глюк ардуины, т.к. один порт прекрасно работает а именно нулевой, а вот с отсальными беда.