Работа с библиотекой блоков RITM CAN FD
Блоки библиотеки RITM CAN FD предназначены для настройки интерфейсов CAN FD, передачи и приема кадров CAN и CAN FD, перезапуска интерфейса и чтения состояния контроллера.
Для работы с блоками установите или обновите пакет поддержки блоков РИТМ, выполнив следующую команду в редакторе скриптов
или командной строке
:
engee.package.install("RITM-Engee-Blocks")
Путь к библиотеке: /RITM/RITM CAN FD.
В библиотеку входят следующие блоки:
Шина CAN FD-сообщения
Блоки RITM-CANFD TX и RITM-CANFD RX используют шину CAN_FD_MESSAGE_BUS следующего типа:
BusSignal{(:ProtocolMode, :Extended, :Length, :Remote, :Error, :BRS, :ESI, :DLC, :ID, :Reserved, :Timestamp, :Data), Tuple{UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt32, UInt32, Float64, UInt8}, ((), (), (), (), (), (), (), (), (), (), (), (64,)), :CAN_FD_MESSAGE_BUS}
Тип описывает одно CAN FD-сообщение. Порты Messages блоков RITM-CANFD TX и RITM-CANFD RX передают массив шин CAN_FD_MESSAGE_BUS; его длина задается параметром Максимальное число сообщений:. Поля каждого элемента массива имеют приведенные ниже скалярные типы, а Data представляет собой массив из 64 байтов.
Поля шины:
| Поле | Тип | Описание |
|---|---|---|
|
|
Формат кадра: |
|
|
Формат идентификатора: |
|
|
Число значащих байтов в поле |
|
|
Флаг RTR. Допустим только для классического CAN-кадра. |
|
|
Признак кадра ошибки. |
|
|
Переключение на скорость фазы данных: |
|
|
Error State Indicator кадра CAN FD. Допустим только для CAN FD. |
|
|
Код длины принятого кадра. При передаче CAN FD фактический DLC определяется по полю |
|
|
Идентификатор кадра. Максимальное значение — |
|
|
Зарезервировано. При формировании кадра задавайте |
|
|
Временная метка принятого сообщения (при передаче не используется). |
|
|
Полезная нагрузка. Значащими являются первые |
Режимы обмена
-
CAN FD без переключения скорости:
ProtocolMode = 1,BRS = 0. Весь кадр передается с номинальной скоростью. -
CAN FD с переключением скорости:
ProtocolMode = 1,BRS = 1. Арбитражная фаза передается с номинальной скоростью, фаза данных — со скоростью, заданной параметром Скорость фазы данных:. -
Совмещенный CAN и CAN FD: формат каждого передаваемого кадра выбирается через
ProtocolMode. Блок RITM-CANFD RX принимает оба формата и заполняетProtocolModeпо фактически принятому кадру.
Обычные блоки RITM-CAN TX и RITM-CAN RX можно подключать к выходу блока RITM-CANFD Setup и использовать для классических кадров на интерфейсе, настроенном в режиме CAN FD. Эти блоки работают с шиной CAN_MESSAGE_BUS и не предназначены для представления кадров CAN FD; для смешанного входящего трафика используйте RITM-CANFD RX.