Драйвер CAN для контроллеров Xilinx Zynq 7000
dev-can-xzynq [can] [опции] [can [опции]]...
Где can - это can0 или can1.
125000,87.5. 1-255) 0-15) 0-7) 0-3) 24M. 12M 24M 48M отключен.64).4).mdriver на основе MID (по умолчанию все сохраняется на первом устройстве)./dev/can). Значение по умолчанию – 1; дополнительным устройствам присваиваются номера в порядке возрастания.ЗОСРВ «Нейтрино»
armv7
| Для запуска этого драйвера необходимо войти в систему под учетной записью root. |
Драйвер шины CAN для контроллеров Xilinx Zynq 7000.
После запуска драйвер dev-can-xzynq создает устройства.
По умолчанию – /dev/can0/rx0 - /dev/can0/rx3 и /dev/can0/tx4.
| Для достижения требуемой скорости передачи сообщений необходимо обеспечить нулевую погрешность скорости путем корректировки параметра sample_point. |
| Bitrate (bps) | BRP | TSEG1 | TSEG2 | SJW | Sample point |
|---|---|---|---|---|---|
| 125000 | 11 | 12 | 1 | 0 | 87.5 |
| 250000 | 5 | 12 | 1 | 0 | 87.5 |
| 500000 | 2 | 12 | 1 | 0 | 87.5 |
| 1000000 | 1 | 7 | 2 | 0 | 75 |
Основные функции
| Функция | Поддержка |
|---|---|
| Режим Autobus | - |
| Режим Loopback | + |
| Ручная настройка параметров битрейта (TSEG1, TSEG2, SJW, BRP) | + |
Расширенная операция записи через CAN_DEVCTL_WRITE_CANMSG_EXT | + |
Расширенная операция чтения через CAN_DEVCTL_READ_CANMSG_EXT | + |
| Дублирование принятых сообщений между приёмными почтовыми ящиками при пересечении фильтров | + |
Установка идентификатора передаваемого кадра для конкретного mailbox’а через CAN_DEVCTL_SET_MID | + |
Чтение текущего идентификатора mailbox’а через CAN_DEVCTL_GET_MID | + |
Расширенные функции
| Функция | Поддержка |
|---|---|
| CAN FD | - |
| Аппаратный RX/TX FIFO | + |
| Режим Listen-Only | + |
| Передача/приём через DMA | - |
| Режим тройной выборки битрейта | - |
| Автоматический расчёт параметров битрейта по заданной скорости | + |
| Несколько независимых аппаратных mailbox’ов для передачи | - |
| Несколько независимых аппаратных mailbox’ов для приёма | + |
Сброс CAN-контроллера через CAN_DEVCTL_RESET | + |
Чтение регистров ошибок через CAN_DEVCTL_ERROR | + |
Установка маски фильтра для конкретного приёмного mailbox’а через CAN_DEVCTL_SET_MFILTER | + |
Чтение маски фильтра конкретного приёмного mailbox’а через CAN_DEVCTL_GET_MFILTER | + |
Настройка локального приоритета отправки кадров через CAN_DEVCTL_SET_PRIO | + |
Чтение локального приоритета отправки кадров через CAN_DEVCTL_GET_PRIO | + |
Сброс счётчика временных меток через CAN_DEVCTL_SET_TIMESTAMP | + |
Чтение текущего значения счётчика временных меток через CAN_DEVCTL_GET_TIMESTAMP | + |
Вывод отладочной информации через CAN_DEVCTL_DEBUG_INFO на стандартный поток вывода или в лог | + |
Запуск драйвера для двух контроллеров.
Для нулевого контроллера параметры, определяющие битрейт будут рассчитаны автоматически.
Для первого контроллера ручной ввод параметров, определяющих итоговую скорость передачи данных.
dev-can-xzynq can0 -b 250000 can1 -c 29,6,1,1
BSP для систем на базе процессора Xilinx Zynq 7000, драйверы
Предыдущий раздел: перейти