ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
23 февраля
1500068 Топик полностью
Nikolay_Po (20.02.2025 21:15, просмотров: 81) ответил Лaгyнoв на если честно меня тоже недавно напрягли. Встроить мой терминал на какой-то базе в текущую ихнюю сеть. Там у них этот самый ОПЦ сервер. И они будут у меня пытать по Модбас РТУ. Раньше это я спрашивал частотники и уровнемеры.. А тут надо самому грамотно отвечать. Вот и засада. :-(((
Берёшь freemodbus. Портируешь (там делов на один присест). И всё, работает. Из не предусмотренного в том коде из коробки, я добавил состояния удержания линии перед передачей и после передачи на пару символов, чтобы обеспечить сброс ошибок на приёмниках, если на не привязанной линии до моей посылки был шум. Ну и светодиод вставил - включается когда увидел свой адрес и выключается когда переходит в ожидание следующего кадра. 

Больше времени, чем само портирование, отняло прописывание папок в среде разработки, чтобы оно вообще собираться начало. А так - код прямолинейный и простой, использует минимум памяти. Я брал базовый код, шаблон без привязки к конкретному контроллеру. И глядя на пример с AVR, сделал под свой STM. Там всего поправит нужно: функции инициализации UART и таймера и интерфейсные функции UART и таймера. Вроде, в двух файлах всего. Ну и в файле конфигурации нужно включить что требуется и не включать, что не требуется.

https://embedded-experts.at/wp-content/uploads/2020/04/freemodbus-v1.6.zip