Страница 1 из 1
Подскажите по UART
Добавлено: 19 авг 2020, 17:28
Skull
Всем доброго времени суток! Подскажите глупому студенту, как организовать вывод в UART шестнадцатеричных команд в байтовом виде (как в MODBUS) ?
Передавать нужно около сотни команд вот такого вида: 0xD5 0x11 0x34 0x20 0x00 0xAA.
Вернее, я никак не соображу, как передавать байты пачкой.....
Подскажите по UART
Добавлено: 19 авг 2020, 18:57
RootShell
Код: Выделить всё
//WRITE
byte i [] = {0xD5, 0x11, 0x34, 0x20, 0x00, 0xAA};
Serial.write(i,sizeof(i));
Код: Выделить всё
//READ
byte i[5];
Serial.readBytes((byte*)i, sizeof(i));
Serial.readBytes((char*)i, sizeof(i));
Подскажите по UART
Добавлено: 20 авг 2020, 10:29
Skull
Спасибо )) А подскажете как из этого сделать блок или как использовать в Flprog ?
Подскажите по UART
Добавлено: 20 авг 2020, 11:18
Dryundel
Skull писал(а): 20 авг 2020, 10:29
Спасибо )) А подскажете как из этого сделать блок или как использовать в Flprog ?
viewtopic.php?f=187&t=5627
Подскажите по UART
Добавлено: 20 авг 2020, 11:21
Skull
Спасибо )
Подскажите по UART
Добавлено: 10 дек 2020, 00:41
zviadovca29
Делаю пользовательский блок из этого скетча для последующей отправки данных в дисплей NEXTION.
Данные принимаю из самодельного круиз-контроля по UART.
Две недели не могу осилить, помогите плиз.
Код: Выделить всё
void setup() {
Serial.begin(9600);
}
void loop() {
char buff[25]; // буфер для чтения всего сообщения
Serial.readBytes(buff, 25); // читаем в буфер если есть что читать.
char spd[3];
memcpy(spd, &buff[1], 3);
Serial.print(" S_tec: ");
Serial.print(spd); // текущая скорость
Serial.print(" ");
memcpy(spd, &buff[4], 3);
Serial.print(" S_stb: ");
Serial.print(spd); // скорость стабилизации
Serial.print(" ");
memcpy(spd, &buff[7], 3);
Serial.print(" S_usr: ");
Serial.print(spd); // пользовательская скорость
Serial.println(" ");
}