-
released this
2026-06-01 15:20:58 +03:00 | 1 commits to CAN_Protocol since this releaseОписание релиза
В рамках этого релиза добавлена возможность отправки сообщений по протоколу с помощью функции:
PROTOCAN_StatusTypeDef PROTOCAN_SEND(ProtoCanId_t id, ProtoCanData_t data);Основные изменения
Отправка по ProtoCan
Добавлена функция PROTOCAN_SEND, которая позволяет отправлять сообщения по протоколу ProtoCan. Пока что поддерживается только сообщения с типом:
PROTOCAN_MSGTYPE_GENERAL_ADDRESS_SPACEProtoCanId_t
Для подготовки сообщения необходимо заполнить структуру ProtoCanId_t, указав:
- MsgType — значение PROTOCAN_MSGTYPE_GENERAL_ADDRESS_SPACE
- Route — должно быть PROTOCAN_ROUTE_FROM_DEVICE
- DeviceType и DeviceID — заполнить согласно текущим определениям
CURRENT_TYPE_DEVICEиCURRENT_ID_DEVICE. - Остальные поля идентификатора заполняются по необходимости.
ProtoCanData_t
Передача данных осуществляется через структуру ProtoCanData_t, которая содержит вложенные структуры с полями, необходимыми для отправки сообщений конкретных типов.
ЗаPROTOCAN_MSGTYPE_GENERAL_ADDRESS_SPACEотвечает структураGeneralAddressSpaceDataс следующими полями:- uint16_t RegStartAdr — Начальный адрес регистров.
- uint16_t *Data — Указатель на массив данных.
- unsigned RegCount — Количество регистров.
Массив Data может содержать любое количество регистров, а функция сама сформирует пакеты, необходимые для передачи.
Downloads