Перейти к содержанию
  • запись
    31
  • комментария
    453
  • просмотров
    68 199

Протокол и команды китайского универсального мини-пульта на 7 кнопок


aitras

5 564 просмотра

В свой усилитель мощности мне захотелось встроить ИК-управление. Для этих целей на eBay был куплен универсальный мини-пульт с семью кнопками. Найти его можно по запросу "Mini Universal Infrared IR TV Set Remote Control Keychain Key Ring 7 Keys".

5a77563dc4da4_2017-06-0722-25-02.thumb.JPG.8b01a9e3fe751b34ce8b69924292446b.JPG 5a775a141a755_2017-06-0722-26-21.thumb.JPG.5e9e5877e1c4ecc15dd90f1433f993ec.JPG

Настроил его как было написано в описании к лоту и попробовал с домашним телевизором. Все заработало нормально. Но никакой информации в интернете о протоколе работы этого пульта я не нашел. Поэтому пришлось подключить звуковую карту к выходу используемого мной ИК-приемника (TSOP34838) и зафиксировать посылки, отправляемые пультом. Ниже показана посылка кнопки POWER:

2018-02-04_19-18-32.thumb.png.a5b289288dcbc5cbbd49fd97461ee3a2.png

Данная картинка сразу дает понять, что это NEC-протокол. Как следует из его описания, короткие импульсы это 4 байта данных - адрес в прямом и инверсном виде, команда в прямом и инверсном виде. На рисунке я текстом написал эти байты. Как видно, все сходится. В байте используется порядок битов от младшего к старшему. То есть полный код команды будет 0x503F.

Теперь стало понятно какой декодер нужно программировать в МК. Написав его, я снял все команды этого пульта:

0x503F - POWER
0x5019 - CH UP
0x5018 - CH DOWN
0x500B - MUTE
0x5012 - VOL +
0x5015 - VOL --

Кнопка AV/TV имеет особенность - при каждом нажатии происходит перебор сразу шести команд по кругу:
0x50210x5022 0x503C 0x5028 0x5013 0x50AD

Адрес всех кнопок равен 0x50, а код кнопки меняется.

Думаю, кому-то данная информация пригодится. Ниже видео, демонстрирующее работу этого пульта.

P.S.: После написания этой заметки до меня дошло, что я продемонстрировал пульт, который копирует команды пульта телевизора, с которым я его настраивал. Так что по факту и протокол работы и команды, как я понимаю, могут быть совершенно разными - все зависит от первоначальной настройки. Если знаете об этом больше меня, дополняйте :) 

6 Комментариев


Рекомендуемые комментарии

Не надо народ вводить в заблуждение! Пульт не копирует команды пульта, а их хранит в своей памяти. Настраивается под любой телевизор просто. Нажимаем кнопку MUTE и удерживаем ее, светодиод на пульте должен погаснуть через секунду и вновь загореться. Далее пульт начинает поочередно перебивать команды отключения звука разных производителей телевизоров (весьма долгий процесс). Как только звук на телевизоре отключился - резко отпускаем кнопку MUTE. Все, пульт под нужный телевизор настроен. Годный декодер для такого пульта на PIC12F675 я еще сделал в 2012г. Работает без нареканий по сей день в круглосуточном режиме для управления светодиодного освещения. 
PS. За одно нажатие любой из кнопок пульт поочередно передает сразу 3 разных команды(нужную команду, и на всякий случай 2 соседние команды пультов других производителей)

Ссылка на комментарий

Может не так выразился. Не копирует, а имитирует - воспроизводит команды того аппарата, с которым был настроен.

3 часа назад, 4uvak сказал:

PS. За одно нажатие любой из кнопок пульт поочередно передает сразу 3 разных команды(нужную команду, и на всякий случай 2 соседние команды пультов других производителей)

Я такого не заметил. Мой выдавал команду и далее код повтора.

Ссылка на комментарий

Ну моим пультам лет много. Может со временем что и изменилось. Я фиксировал посылки при помощи логического анализатора. Там за 0,3 сек улетало 3 разных посылки. Другими словами за секунду передавалось только 3 полезные посылки, остальное "мусор"...

Ссылка на комментарий
Цитата

Адрес всех кнопок равен 0x50

Более правильно - код пульта. Он общий для всех кнопок и отличается у разных пультов. Поэтому в прошивке для привязки пульта,  достаточно помнить только второй байт - с кодом кнопки и пропускать обработку всех кодов,  у которых первый байт не равен коду пульта. 

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Добавить комментарий...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...

×
×
  • Создать...