Работа Serial порта

IUS
Offline
Зарегистрирован: 15.01.2015

Добрый день. Подскажите плиз ( разъяснить на пальцах) или кинте ссылку ( желательно на русском), Как правильно работать с Serial портом. В частности есть задача : Мега выступае мастером и кидает в Serial  порт 1 , посылку массив {0x1, 0x3, 0x1, 0x2, 0x0, 0x1, 0x24, 0x36} , а потом ждёт ответ. Вот часть скетча (это в общем пробный вариант для разбора работы порта). Скорость порта 19200

void loop(void) {
   digitalWrite(SerialTxControl, RS485Transmit); // выставляю порт в режим передачи
  for(i=0; i<=7; i++)
  {
  Serial1.print(XXX[i]);                        // последовательно посылаю массив 
  Serial1.flush();                              // жду окончания посылки
  Serial.print(XXX[i], HEX);                    // смотрю что отправляется в порт 1
  Serial.print(" ");
  }
   Serial.println("end");
      ...

Дальше я слушаю линию и жду ответа.

Вопрос - Всё-ли я делаю так или нет,  так как мастер  (панель которую я хочу заменить ардуиной ) отсылая туже посылку получает ответ , а ардуина нет.

kisoft
kisoft аватар
Offline
Зарегистрирован: 13.11.2012

Вместо Serial1.print, write?

IUS
Offline
Зарегистрирован: 15.01.2015

спасибо, заработало, 

P.S. Сколько я мануалов прочитал по мод басу, сколько меня , с моими вопросами в зад посылали - не счесть, а окозалось всё на много проще.  И не надо ни каких библиотек Serial порт рулит.