Протокол RC5 инфракрасного управления

В протоколе RC5 каждая командная посылка состоит из 14 бит информации -

  • 2 (или 1 для протокола RC5X) стартовых бита (всегда "1")
  • 1 управляющий бит (Toggle)
  • 5 бит адреса устройства
  • 6 бит кода команды (7 бит для протокола RC5X)

Пять бит адреса позволяют управлять до 32 различных типов устройств. Шесть бит команды дают возможность передавать до 64 различных команд.

Особенности протокола RC5:

  • 5 бит адреса устройства и 6 бит кода команды (7 бит для протокола RC5X)
  • бифазное кодирование, аналогично коду "Манчестер"
  • Опорная частота 36 кГц
  • Фиксированное время передачи бита 1.778 мс (64 периода частоты 36 кГц)
  • Фиксированная постоянная общая длительность пакета - 24.9 мс

Протокол использует бифазное модулирование (иначе называемое кодом "Манчестер") несущей частоты 36 кГц. Все биты передаются за одинаковое время 1.778 мс. Половина этого времени заполнена импульсами несущей частоты, другая половина - чистая. "Нулевой" бит информации передается с заполненной первой половиной, а "единичный" - с заполненной второй половиной. Опорная частота имеет скважность 3 или 4.

Способ передачи бит

Типичная последовательность формата RC5 показана на рисунке ниже. В начале посылки передается два стартовых бита, имеющих значение "1", RC5X имеет только один стартовый бит, второй бит становится седьмым битом команды. Третий бит меняет своё состояние при каждом следующем нажатии кнопки. Если кнопка удерживается, то посылка повторяется каждые 114 мс, при этом Toggle бит не меняется. Таким образом определяется различие между нажатием одной кнопки несколько раз и удерживанием.

Формат посылки RC5

Philips создал перечень стандартных команд ИК пультов своих устройств. Это позволяет обеспечить совместимость устройств, выпущенных в разные годы. Кроме того, при наличии двух однотипных устройств, Philips дает возможность управлять ими независимо, для чего в перечне присутствуют некоторые повторы:

RC-5
Address
Device
$00 - 0 TV1
$01 - 1 TV2
$02 - 2 Teletext
$03 - 3 Video
$04 - 4 LV1
$05 - 5 VCR1
$06 - 6 VCR2
$07 - 7 Experimental
$08 - 8 Sat1
$09 - 9 Camera
$0A - 10 Sat2
$0B - 11  
$0C - 12 CDV
$0D - 13 Camcorder
$0E - 14  
$0F - 15  
$10 - 16 Pre-amp
$11 - 17 Tuner
$12 - 18 Recorder1
$13 - 19 Pre-amp
$14 - 20 CD Player
$15 - 21 Phono
$16 - 22 SatA
$17 - 23 Recorder2
$18 - 24  
$19 - 25  
$1A - 26 CDR
$1B - 27  
$1C - 28  
$1D - 29 Lighting
$1E - 30 Lighting
$1F - 31 Phone
 
RC-5
Command
TV Command VCR Command
$00 - 0 0 0
$01 - 1 1 1
$02 - 2 2 2
$03 - 3 3 3
$04 - 4 4 4
$05 - 5 5 5
$06 - 6 6 6
$07 - 7 7 7
$08 - 8 8 8
$09 - 9 9 9
$0A - 10 -/-- -/--
$0C - 12 Standby Standby
$0D - 13 Mute  
$10 - 16 Volume +  
$11 - 17 Volume -  
$12 - 18 Brightness +  
$13 - 19 Brightness -  
$20 - 32 Program + Program +
$21 - 33 Program - Program -
$32 - 50   Fast Rewind
$34 - 52   Fast Forward
$35 - 53   Play
$36 - 54   Stop
$37 - 55   Recording