Строка 26: |
Строка 26: |
| | | |
| == Уровень передачи данных == | | == Уровень передачи данных == |
− | Подключённые к шине устройства являются могут работать в режимах master и slave. | + | Подключённые к шине устройства являются могут работать в режимах [[master и slave]]. |
| | | |
| Только master-устройство может инициировать команду, выдав пакет данных, состоящий из: | | Только master-устройство может инициировать команду, выдав пакет данных, состоящий из: |
Строка 36: |
Строка 36: |
| * 0–16 байт данных | | * 0–16 байт данных |
| * 8-битного байта CRC (полином:x<sup>8</sup>+x<sup>7</sup>+x<sup>4</sup>+x<sup>3</sup>+x+1) | | * 8-битного байта CRC (полином:x<sup>8</sup>+x<sup>7</sup>+x<sup>4</sup>+x<sup>3</sup>+x+1) |
| + | Получатели подтверждают такую команду одним байтом подтверждения 0x00 (получено правильно) или 0xff (получено неправильно). Ведомые устройства следуют за своим байтом подтверждения ответом, состоящим из байта длины и байтов данных 0–16 плюс CRC, который принимающий мастер, в свою очередь, подтверждает байтом подтверждения. На последнем этапе обмена данными мастер завершает команду отправкой байта синхронизации SYN (0xaa). Это сигнализирует другим ведущим устройствам, что шина снова доступна для использования. Правило вставки байтов (0xa9 -> 0xa9 0x00, 0xaa -> 0xa9 0x01) применяется ко всем остальным отправленным байтам, чтобы гарантировать, что 0xaa не появится в сети как часть каких-либо передаваемых данных, кроме как в последнем байте синхронизации. Передача команды может произойти только сразу после того, как байт SYN был замечен на шине. Если в течение 35 мс на шине не появился байт SYN, питание шины передает его, чтобы гарантировать, что возможности передачи остаются (AUTO-SYN). Каждый мастер шины, обращающийся к шине сразу после SYN, должен проверить (в буфере приемника своего UART), что отправленный им байт адреса источника действительно появился на шине неповрежденным и не конфликтовал с попыткой передачи другого ведущего устройства. В последнем случае передача должна быть прервана и инициирована процедура разрешения коллизий: при следующем AUTO-SYN участники с классом приоритета ниже самого высокого, участвовавшего в последней коллизии, не должны предпринимать попытку повторной передачи (и ждать, пока следующий SYN). |
| | | |
| == Уровень приложений == | | == Уровень приложений == |
Строка 44: |
Строка 45: |
| | | |
| Сейчас они доступны на сайте немецком любительском сайте eBus. | | Сейчас они доступны на сайте немецком любительском сайте eBus. |
| + | |
| + | * Документы по eBUS в Информатории |
| + | |
| + | == Устройства, совместимые с протоколом == |
| + | |
| + | * [https://esera.de/produkte/ebus/ Шлюзы и адаптеры eBUS] |
| | | |
| == Внешние ссылки == | | == Внешние ссылки == |
| + | |
| + | * [http://ebus-wiki.org/ eBus Wiki] – Немецкий веб-сайт для энтузиастов eBus содержит последние версии официальных немецких и английских спецификаций eBUS и сопутствующих документов. |
| + | * [http://web.archive.org/web/20230000000000*/http://www2.ebus.de/ eBUS Interest Group] –доступна только в веб-архиве |
| + | * [https://github.com/john30/ebusd eBUS daemon] – Написанный на [[C++]] демон для связи с системами отопления, использующими eBUS. |
| + | |
| [[Категория:Протоколы управления умным домом]] | | [[Категория:Протоколы управления умным домом]] |