Anonymous
Василий
задача полностью не описана - навряд ли это будет обмен мегабайтнымит файлами между МК
так что предположительно десяток байт туда - десяток обратно
- неверная CRC просто - запрос очередных десяти байт, или тех же
Василий
да и вообще пофиг чем обмениваться - там логика примитивная - запрос - ответ
Александра
Всем привет. Помогите разобраться. ESP8266, adruino mega or mega.
Первый раз пишу под espшку, подключен через usb, свитодиод припаян на 8 порт(тускло горит на данный момент)
При заливке скетча выдает вот такую ошибку
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer
Заливаю через юсб, ноут, win7.
Александра
Anonymous
Василий
Василий
плюс минус - похоже на Modbus
Anonymous
Andy
Василий
никакой каши - пришел пакет - посмотрели что за пакет по коду - разобрали - ответили
SetPf
SetPf
Либо ждать пока придет ответ.
Василий
конечно ждать - идеалогия же запрос-ответ
SetPf
Ждать пока придет ответ - хрень какая то, разве что совсем редкий обмен.
Andy
SetPf
Ну и у меня вопрос все равно стоит что необходимо что бы оба устройства имели возможность начинать обмен.
Василий
все давно регламентировано 3,5 длины байта - считается концом пакета
Anonymous
Василий
Anonymous
Andy
Кажется вырисовываются требования к протоколу - асинхронный, с разрешением коллизий, с контролем целостности. :)
Anonymous
Anonymous
Ну почти любому, если не брать адресацию
Василий
Andy
SetPf
SetPf
https://github.com/min-protocol/min/wiki
Нагуглил такую штуку.
Очень похоже на то что надо.
Василий
куда катиться мир - неизвестно,
- никто не хочет думать, разбираться, понимать...
Василий
вы туда еще TCP/IP стек засуньте - а ЧЁ, с пушки по воробьям - самое оно ))
Yuriy
есть protobuf портированный для esp - еще поверх его помазать
Василий
Anonymous
На мой взгляд, цель понятна по первым сообщениям
SetPf
Anonymous
Василий
Yuriy
https://ru.wikipedia.org/wiki/Protocol_Buffers - серьезно кстати
SetPf
у вас же ESP32 ?
с ардуино IDE?
У меня 8битный контроллер с довольно жирной программой и довольно глубоко вросшей архитектурой обмена данных\команд.
И надстройка из ECП, призванная предоставить высокоуровневые или тяжелые в реализации фичи.
Yuriy
SetPf
SetPf
И переписывать в нее надо дофига.
Василий
SetPf
Василий
SetPf
В обоих умеет =)
romanetz
romanetz
а дальше гитхаб в помощь, тысячи их
romanetz
https://github.com/mengguang/minihdlc
romanetz
как пример
SetPf
Во, спасибо буду смотреть тоже.
Yuriy
а чего делает - вообще мини такой... просто бьет на фреймы... crc считает и всё?
romanetz
Василий
не нужно оно тут все - для этой примитивной задачи
Yuriy
Василий
"код команды+тело команды+crc"
например
01 - получить данные настроек
02 - отправить данные настроек
03- получить данные от датчиков
04- установить выходы
и весь баян
romanetz
https://github.com/mengguang/ArduinoHDLC
romanetz
"This Project is based on https://github.com/jarkko-hautakorpi/Arduhdlc .
I changed some function name, make code more clean and added one example.
The example is mainly tested on ESP8266 Arduino 2.3.0 environment."
SetPf
Yuriy
romanetz
если hdlc не слишком сложный/объёмный по футпринту - чего бы и его не запилить?
romanetz
но я не настаиваю, конечно
SetPf
Yuriy
tyua протокол обмена между mcu и вторым (не знаю тоже mcu но проще - как раз как тут) можно посмотреть - там как раз один проц с другим общаются - у них работает - и там точно есть инициализация :)
Yuriy
https://images.tuyacn.com/smart/aircondition/Guide-to-Interworking-with-the-Tuya-MCU.pdf
Yuriy
Sid
SetPf