Как работает DiSEqC

Для передачи команд DiSEqC используется коаксиальный кабель, в котором, кроме сигнала радиочастоты, присутствует напряжение питания конвертера (13 В или 18 В постоянного тока), и может присутствовать управляющий тон 22 кГц. Двоичные символы - логические "единицы" и "нули" - кодируются посылками тона 22 кГц. Продолжительность одного символа постоянна и равна 1.5 мс, длительности посылки и паузы изменяются. Для "единицы" длина посылки составляет 0.5 мс, или 11 периодов частоты 22 кГц, а длина паузы - 1.0 мс. Для "нуля", наоборот, посылка длится 1.0 мс и содержит 22 периода тона 22 кГц, пауза - 0.5 мс.

Сообщение DiSEqC состоят из целого числа байтов, после каждого байта следует бит контроля на четность P. Команда ресивера может содержать от 3 до 6 байтов. Первый байт - служебный (framing) - обязательный, он содержит постоянную последовательность "11100" для синхронизации управляемого устройства и три бита-признаки: команда / ответ, первичная / повторная, ответ нужно / не нужно. Второй байт, обязателен - адрес управляемого устройства. Все устройства адресуются по типу. Адрес состоит из двух частей: старшие 4 разряда определяют семейство устройств (например, позиционеры или конвертеры), младшие 4 разряда - тип устройства внутри семейства. И для младшей, и для старшей части адреса предусмотрен "широковещательный" адрес "0000", который означает соответственно "всем периферийным устройствам данного семейства" или "всем периферийным устройствам вообще". Третий байт, обязателен - код команды. Четвертый и последующие - байты данных. В зависимости от назначения команды, она может содержать от одного до трех байтов данных, а может не содержать их вовсе. Ответ периферийного устройства (в уровнях DiSEqC 2.х) содержит от 1 до 3 байтов - служебный байт и один или два байта данных.

Сообщение DiSEqC передается в следующей последовательности: если на момент передачи в кабеле присутствует тон 22 кГц, он прекращается, затем, если одновременно с подачей команды DiSEqC подается команда 13/18 В, изменяется напряжение и выдерживается пауза (5 мс). После этого команда DiSEqC передается вместе, без промежутков между байтами данных и контрольными битами, и снова выдерживается пауза в 15 мс. Затем передается команда Tone Burst, и только потом, если нужно, возобновляется непрерывный тон 22 кГц. Поскольку инициализация любой команды DiSEqC происходит только при переключении каналов, временное отсутствие тона 22 кГц никак не сказывается на качестве приема. Команда передается единовременно, в промежутках между командами управляемое устройство сохраняет состояние, соответствующее последней полученной команде.

В каждом периферийном устройстве, поддерживающем DiSEqC, установлен микроконтроллер. Он обнаруживает модулированный сигнал 22 кГц, анализирует полученную цифровую последовательность, управляет исполнительными цепями и, если необходимо, формирует ответ управляемого устройства. Компанией Eutelsat был разработан специализированный микроконтроллер для периферийных устройств и программное обеспечения. Многие производители используют микроконтроллеры общего назначения, например, популярные МК серии "PIC" фирмы Microchip.