3.4 KiB
3.4 KiB
Общее адресное пространство
Статус: Stable, данные ведутся в XLSX
Порядок значений: 16-битные регистры, little-endian в CAN payload
Редактируемый источник реестра:
Протокол CAN и ОАП.xlsx.
Просматриваемая большая таблица находится в
Протокол CAN и ОАП.html и
Протокол CAN и ОАП.md.
Назначение
ОАП связывает 16-битный адрес регистра с его типом, назначением, доступом и
масштабом. В ProtoCAN используется MsgType=0x3, а MsgBody содержит адрес
первого регистра.
Обязательные поля реестра
| Поле | Требование |
|---|---|
| AddressHex | 0x0000…0xFFFF, уникальное значение |
| AddressDec | десятичный эквивалент AddressHex |
| Group | функциональная группа |
| Name | однозначное имя параметра |
| Type | u16, i16, u32, i32, float32, bitmap или массив |
| Registers | число занятых 16-битных регистров |
| Access | R, W или RW |
| Unit | физическая единица либо — |
| Scale | множитель/делитель представления |
| Default | значение после сброса, если применимо |
| Description | семантика, диапазон и особые значения |
Правила ведения
- Адрес не переиспользуется с другим смыслом после выпуска стабильной версии.
- Многорегистровое значение занимает непрерывный диапазон.
- Порядок 16-битных слов для 32-битного значения фиксируется в строке типа.
- Резервные диапазоны явно отмечаются и не используются без изменения версии.
- Удалённый параметр помечается deprecated, а не исчезает молча.
- Изменение адреса, типа или масштаба отражается в
CHANGELOG.md.
Экспорт
Для программной генерации каталог следует экспортировать из XLSX в CSV с UTF-8 и фиксированными английскими именами колонок. CSV должен проверяться на:
- уникальность адресов;
- пересечение многорегистровых значений;
- допустимые типы и права доступа;
- равенство шестнадцатеричного и десятичного адреса;
- попадание адреса в диапазон
0x0000…0xFFFF.
До появления автоматического экспортёра нормативным источником адресов остаётся XLSX, а HTML/Markdown считаются представлением.