Ситуация такова:
Имеются 2 стационарные радиостанции, которые имеют возможность подключения аппаратуры передачи данных. Требуется передавать данные температуры, показания счётчиков эл.энергии (2 фидера) .
Т.е на стороне одной радиостанции Arduino по RS-232 подключена к р/ст, на другой стороне Arduino по RS-232 подключена к р/сти через W5500 к каналу передачи данных.
Вот выдержка из РЭ:
Аппаратура передачи данных АПД подключается к интерфейсу АПД (стык RS-232) системного модуля радиостанции. параметры интерфейса - 9600 бит/с,8N1. При необходимости используется управление потоком с помощью сигналов RTS, CTS.
Радиостанция может обмениваться с АПД в прозрачном режиме. В прозрачном режиме поток байт, принимаемых из RS-232 упаковывается в кодограммы определённого формата и передается в радиоканал. На приёмной стороне кодограммы распаковываются и формируется поток байт, передавемый в RS-232. Организуется прозрачный канал обмена между двумя оконечными устройствами.
Для передачи в радиоканал АПД начинает передавать байты данных.В радиостанции данные записыаются в буфер размером 2 кБайт. Если буфер заполнен более чем на половину, то формируется неактивный сигнал готовности (RTS=0). Если буфер заполнен менее чем на четверть, то формируется активный сигнал готовности (RTS=1). Из буфера данные передаются в радиоканалю.
В радиоканал данные передаются кодограммами. Кодограмма состоит из символов - частотных посылок длительностью 15 мс. Повторяющийся символ заменяется символом R.
Формат кодограммы приведён ниже
Номер посылки Символ Примечание
1 S Стартовый символ
2 Адрес1 Адрес кодограммы_1
3 Адрес2 Адрес кодограммы_2
4 0 ПРизнак повтора (не исп)
5 0 Признак разрядности (не исп)
6 I Признак информации
7 Байт1 - Старшая тетрада |
8 Байт2 - Младшая тетрада |
... | количество байтов данных от 1 до 14
33 Байт14 - Старшая тетрада |
34 Байт14 - Младшая тетрада |
35 Пауза Завершающая пауза
Поля Адрес1, Адрес2 используются в качестве адреса(идентификатора, типа) кодограммы. Значения для передачи, приёма конфигурируются параметрами р/cт. Если у принятой кодограммы поле адреса не совпадает с ожидаемым, то она отбрасывается. Если поле адреса совпадает, то данные из кодограммы передаются в АПД.