Подтяжка шины данных (FLAG_CONFIG_PULL_UP 0x06) deprecated¶
Некоторые устройства позволяют подтягивать шину данных LIN к +12В. В таком случае используется данная настройка со следующей структурой обмена данных:
enum PULL_UP_STATES {
LIN_PULL_UP_OFF = 0x00,
LIN_PULL_UP_ON = 0x01
};
typedef struct {
CommandHeader header;
uint8_t state;
} __attribute__((packed)) ChannelConfigurePullUp;
Данная настройка доступна для устройств с идентификаторами HW_CHP (0x03), HW_CHPM03 (0x13) и HW_FDL2 (0x06). Если устройство не поддерживает данную настройку, то ответ будет содержать 0xFF в поле с номером команды.
Запрос
Поле | Значение |
header.command | 0x11 |
header.sequence | порядковый номер запроса |
header.flags | FLAG_CHANNEL_x + FLAG_CONFIG_PULL_UP |
header.dSize | 0x01 |
state | значение из PULL_UP_STATES |
Ответ
Если запрос успешно обработан и значение подтяжки задано из допустимого диапазона значений.
Поле | Значение |
command | 0x91 |
sequence | порядковый номер запроса |
flags | 0x00 |
dSize | 0x00 |
Если запрос не обработан.
Поле | Значение |
command | 0xFF |
sequence | порядковый номер запроса |
flags | 0x00 |
dSize | 0x00 |
Пример
Подтяжка шины данных к +12В для канала 3.
⇒ 11 xx 66 01 01
⇐ 91 xx 00 00
Задание подтяжки шины данных для канала 3 с неправильным значением.
⇒ 11 xx 66 01 10
⇐ FF xx 00 00