Получение данных с ПК по RS-232

LTI
Offline
Зарегистрирован: 04.04.2019

Здравствуйте!

Помогите, пожалуйста разобраться со следующей задачей: Arduino UNO не считывает данные с последовательного порта при получении их по RS-232.

Использую плату "RS-232 TO TTL". Подключение VCC - 5V; RX-RX; TX-TX; GND-GND (на плате рядом с 5V). На компьютере стоит переходник USB -RS-232.

При отправке данных с Arduino на компьютер все приходит в полном порядке. При отправке с ПК мониором фиксируется запись данных в порт, но Arduino их не принимает. Не работает в компилляторе, не работает при использовании использовании программы на Visual Basic и при тесте монитором.

void setup() {
Serial.begin(9600);
}

void loop()
{
Serial.println("I'm transmit data");

delay(2500);

  if (Serial.available()>0) {
    int val = Serial.read();
    if (val==82) // 82 is equal to "R"
    {
Serial.println("I'm receive data");
    }
  }
}

При использовании USB, Arduino все отрабатывает. 

Перепробовал кучу скетчей от самых простых до достаточно сложных. По USB все всегда работает, по COM только линия Arduino - ПК.

 

xDriver
xDriver аватар
Offline
Зарегистрирован: 14.08.2015

пугает это

LTI пишет:

Подключение VCC - 5V; RX-RX; TX-TX; GND-GND (на плате рядом с 5V). 

может надо RX-TX, TX-RX ?

LTI
Offline
Зарегистрирован: 04.04.2019

Методом научного тыка выяснено, что при перекрестной схеме отправка данных на компьютер не происходит. :-)

В Интернете описан этот вопрос. Многие советуют подобрать, чтобы данные шли. У меня контроллер не оригинальный (не от Arduino), может специально пишут по-другому на плате. 

andycat
andycat аватар
Offline
Зарегистрирован: 07.09.2017

У китайцев в переходниках Rs232 ttl бывает перепутаны или сознательно изменены rx tx, мне пришлось кабель Rs232 Rs232 вскрывать и менять местами rx tx