Через последовательный порт на модуль

Niko62
Offline
Зарегистрирован: 25.01.2017
Здравствуйте!
Пытаюсь подключить звуковой модуль к Ардуино через последовательный порт (пины 1 и 0).
Для того, чтобы началось воспроизведение трека, нужно отправить команду вида "FD 04 41 00 01 DF".
 
Я отправляю ее так:

     char c = 0x30;     // символ 0
     char l = 0x31;    //  символ 1
     char e = 0x34;    //  символ 4
     char d = 0x44;    //  символ d
     char f = 0x46;    //  символ f
     char q = 0x20;    // пробел
               
     Serial.print (f);
     Serial.print (d);
     Serial.print (q);
     Serial.print (c);
     Serial.print (e);
     Serial.print (q);
     Serial.print (e);
     Serial.print (l);
     Serial.print (q);
     Serial.print (c);
     Serial.print (c);
     Serial.print (q);
     Serial.print (c);
     Serial.print (l);
     Serial.print (q);
     Serial.print (d);
     Serial.print (f);

 

 
Ничего не происходит.
Подскажите, как правильно отправить команду на последовательный порт? 
 
xDriver
xDriver аватар
Offline
Зарегистрирован: 14.08.2015

Хоть сделано через жопу, но работать должно. Все ваши потуги сводятся в одну строку

Serial.print("FD 04 41 00 01 DF");

а вот другое дело почему ничего не происходит, толи данные так и не уходят в порт, толи скорость не та, толи формат...

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

что за модуль, где опять весь скетч, хрен его знает!!!

админам:

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

Niko62
Offline
Зарегистрирован: 25.01.2017
Про последовательность байт, думаю, вы правильно подозреваете.
В мануале написано - "For example, if we specify the playback, you need to send:FD 04 41 00 01 DF data length is 4, which is 4 bytes are [04,41,00,01].
 Not counting the start and end."
 
Так что действительно, нужно отправлять последовательность байт. А как? 
Модуль безымянный. Маркировок нет. Библиотек тоже. Фотку приложил.
 

Communication format

Supports asynchronous serial communication mode, commands sent via serial port to receive PC

Communication standard: 9600 bps

Data bits: 1

Parity bit: none

Flow control: none

 
 
 
А остальная часть скетча в общем то стандартная 

void setup()

{
  Serial.begin(9600);
}

void loop()

{
char c = 0x30;     // символ 0
     char l = 0x31;    //  символ 1
     char e = 0x34;    //  символ 4
     char d = 0x44;    //  символ d
     char f = 0x46;    //  символ f
     char q = 0x20;    // пробел
     
     
          
     Serial.print (f);
     Serial.print (d);
   
      Serial.print (q);
     Serial.print (c);
     Serial.print (e);
    Serial.print (q);
    Serial.print (e);
     Serial.print (l);
     Serial.print (q);
    
     Serial.print (c);
     Serial.print (c);
     Serial.print (q);
     Serial.print (c);
     Serial.print (l);
    Serial.print (q);
     Serial.print (d);
     Serial.print (f);
delay (7000);

}



 

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

Ну вот, другое дело

пробуйте 

  char Play[] = {0xFD, 0x04, 0x41, 0x00, 0x01, 0xDF};
  Serial.write(Play);

 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Наверное надо - Serial.write(str)

nik182
Offline
Зарегистрирован: 04.05.2015

xDriver пишет:

Ну вот, другое дело

пробуйте 

  char Play[] = {0xFD, 0x04, 0x41, 0x00, 0x01, 0xDF};
  Serial.write(Play);

 


Вернее
Serial.write(Play,6);

Niko62
Offline
Зарегистрирован: 25.01.2017

Всем большое спасибо! Заработало!!!)

char Play[] = {0xFD, 0x04, 0x41, 0x00, 0x01, 0xDF};
Serial.write(Play,6);

Если не сложно, подскажите хорошую литературу по программированию Ардуино и вообще микроконтроллеров.

 

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Niko62 пишет:

Если не сложно, подскажите хорошую литературу по программированию Ардуино и вообще микроконтроллеров.

http://arduino.ru/forum/obshchii/podborka-knig-sovremennye-mikrokontroll...

http://www.arduino.ru/forum/otvlechennye-temy/posovetuite-knigu

Ну и кроме этого, книга по языку - Керниган и Ритчи. Язык прогроаммирпования Си.

 

Niko62
Offline
Зарегистрирован: 25.01.2017

Спасибо!