Сбросить фильтр (COMMAND_FILTER_CLEAR 0x22)¶
Команда сброса фильтра. Как только на канал будут сброшены все фильтры, то канал работает на пропуск всех сообщений с шины.
Для сброса фильтра используется структура:
typedef struct {
CommandHeader header;
uint8_t number;
} __attribute__((packed)) FilterClear;
Здесь в поле number передаётся порядковый номер фильтра для канала. Нумерация идёт от 0. Канал фильтра задаётся в поле header.flag.
Запрос
Поле | Значение |
header.command | 0x22 |
header.sequence | порядковый номер запроса |
header.flags | FLAG_CHANNEL_x |
header.dSize | 0x01 |
number | порядковый номер фильтра для канала |
Ответ
Если запрос успешно обработан и номер фильтра задан из допустимого диапазона значений.
Поле | Значение |
command | 0xA2 |
sequence | порядковый номер запроса |
flags | 0x00 |
dSize | 0x00 |
Если запрос не обработан.
Поле | Значение |
command | 0xFF |
sequence | порядковый номер запроса |
flags | 0x00 |
dSize | 0x00 |
Пример
Сброс фильтра 2 для второго канала.
⇒ 22 xx 40 01 01
⇐ A2 xx 00 00
Сброс фильтра канала 2 с заданием неверного индекса фильтра.
⇒ 22 xx 40 01 33
⇐ FF xx 00 00