Пятница, 31 декабря 2010 19:16

Тестер пультов ДУ протокола RC-5

Оцените материал
(1 Голосовать)
Тестер пультов ДУ протокола RC-5 - 5.0 out of 5 based on 1 vote

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

Достоинство предлагаемого прибора — полный визуальный контроль передаваемой информации. Хотя он "понимает" команды только одного, самого распространенного формата RC5, изменив программу, можно приспособить тестер и к приему команд других форматов.
Команда согласно протоколу RC5 показана на рис. 1. Кодовая последовательность (кривая 1) состоит из 14 тактовых интервалов длительностью по 1,78 мс (64 периода частоты 36 кГц), в каждом из которых передают один разряд двоичного кода. Лог. 1 соответствует положительный перепад уровня в середине тактового интервала, лог. 0 — отрицательный.

Рис.1

Два первых разряда (St,, St2) — стартовые. Они всегда имеют значение 1, что позволяет приемнику опознать начало команды. Третий разряд — служебный. Его значение сменяется противоположным при каждом нажатии на кнопку ПДУ, что позволяет отличить новую команду от автоматического (каждые 114 мс при удержании кнопки нажатой) повторения ранее поданной. В разрядах S4—S0 указан адрес устройства (системы), которому предназначена команда. Приведенный в примере адрес 5 (00101) закреплен за видеомагнитофонами, а, например, телевизорам присвоены адреса 0 (00000) или 1 (00001), видеокамерам — 9 (01001). В шести разрядах С5—С0 записан собственно код команды, в данном случае 35Н (110101), "Воспроизведение".

Протокол RC5 позволяет с помощью одного пульта подавать по 64 команды независимо на 32 различных устройства. Если этого недостаточно, используют "расширенный" протокол RC5, согласно которому еще один разряд команды (С6) занимает место второго стартового (St2). Таким образом, число возможных команд возрастает до 128.

При передаче команд по ИК каналу связи сформированной кодовой последовательностью RC5 модулируют несущую частоту 36 кГц, в результате чего ПДУ излучает пачки ИК импульсов этой частоты (кривая 2 на рис. 1). Для их приема обычно применяют специализированные модули, импульсная последовательность на выходе которых (кривая 3) инверсна исходной.

Рис.2

Прибор, схема которого приведена на рис. 2, построен на микроконтроллере AT90S2313 фирмы Atmel. Выходы портов микроконтроллера выдерживают втекающий ток до 20 мА, что позволяет напрямую подключать к ним светодиодные индикаторы. Сигнал, принятый и демодулированный ИК приемником В1, поступает на выв. 3 (PD1) микроконтроллера DD1, сконфигурированный как вход с внутренним "подтягивающим" резистором. Блокировочный конденсатор С1 должен быть расположен как можно ближе к выводам питания ИК приемника.

Светодиодный индикатор HG1 подключен к порту В (выводам 12—19) микроконтроллера DD1. Резисторы R4—R11 ограничивают ток. Динамическая индикация организована путем поочередной установки уровня лог. 0 на выводах 7—9,11 (PD3—PD6) микроконтроллера DD1, к которым подключены базовые цепи транзисторов VT1—VT4, коммутирующих аноды светодиодов индикатора.

Адрес и код команды, принятой тестером, индикатор отображает четырьмя шестнадцатиричными цифрами. Две старшие — адрес устройства, которому послана команда, две младшие- ее код. Учтите, если Ctrl=1, старшая шестнадцатиричная цифра кода команды будет выведена увеличенной на 4. Это связано с особенностями программной процедуры декодирования.

Программа микроконтроллера на языке BASIC разработана с помощью системы программирования BASCOM-AVR.

Основную задачу — декодирование принятой команды выполняет подпрограмма  Getrc5.  Она  встроена в компилятор, поэтому описывать ее в тексте программы не требуется.  Она начинает декодироаание, обнаружив в принятом сигнале паузу длительностью более 3,5 мс, и считает первый же принятый после этого импульс стартовым. Закончив прием, подпрограмма возвращает адресную часть команды в переменной А, ее код — в переменной С. Если в течение 131 мс ни одного импульса не принято, подпрограмма завершает работу, присвоив переменным А и С значения 255.

Далее программа разделяет старшие и младшие разряды адреса и кода команды, занося их в переменные К(1)—К(4), и с помощью функции Di преобразует полученные значения в коды шестнадцатиричных цифр для отображения на семисегментном индикаторе. Светящемуся элементу соответствует 0 в разряде кода, погашенному — 1. Сигналы распределены по выводам микроконтроллера исходя из удобства разводки печатной платы. В цикле динамической индикации операторами Waitms заданы интервалы (в миллисекундах), в течение которых выводится каждая цифра

Вместо ИК приемника ILMS5360 подойдет SFP506 или TSOP1736. Кварцевый резонатор ZQ1 — в любом конструктивном исполнении, но обязательно на частоту 10 МГц, иначе потребуется корректировка программы. Индикатор BQ-M326RD можно заменить CA56-12SRD с цифрами большего размера или четырьмя отдельными индикаторами с общим анодом. В первом случае достаточно учесть увеличенные размеры индикатора (цоколевка совпадает), во втором — потребуется существенная корректировка печатного монтажа. В качестве стабилизатора DA1 пригоден любой с выходным напряжением 5 В. Конденсаторы С2, СЗ — керамические КМ-5, оксидные С1, С4 — К50-35 или импортные. Резисторы — МЛТ0-125.

Источник: Радио №2, 2005 г.


Скачать архив

Прочитано 17743 раз

Добавить комментарий


Комментарии   

vladim
0 #2 vladim 17.11.2011 15:32
Помогите пожалуйста разобраться, почему не определяются код и адрес команды в программе после функции Getrc5? Схема собрана правильно (замененные коды на константы отображаютя на индикаторе). Все взято из журнала Радио№2 за 2005год.
Цитировать
vladim
0 #1 vladim 17.11.2011 11:11
Код Geyrc5 зависает. При снижении частоты как-то реагирует на некоторые команды с пульта показывает везде(0EAE.
Цитировать

Вход

Топ

ЛАБОРАТОРНЫЙ БП…

Эта статья предназначена для людей, которые быстро могут отличить транзистор от диода,…

Выпрямители с…

При разработке регулируемого источника питания без высокочастотного преобразователя…

sPlan 7.0.0.9 Final…

Графический редактор с элементами, позволяющими легко рисовать электрические схемы. Очень…

Цифровой…

Цифровой вольтамперметр предназначенный для установки в блок питания для отображения…

Зарядное устройство…

Ещё одно зарядное устройство собрано по схеме ключевого стабилизатора тока с узлом…
P-CAD 2006

P-CAD 2006 + SP1 +…

Система P-CAD предназначена для проектирования многослойных печатных плат (ПП)…

Зарядное устройство…

Простое зарядное устройство с регулятором зарядного тока можно собрать по схеме…

Автоматическое…

Здравствуйте уважаемые пользователи, хочу представить вам ЗУ для автомобильных АКБ. Вот…

Приставка к…

Участник форума электромобилистов, Курманенко Геннадий Викторович из Днепропетровской…

sPlan 7.0.0.1…

Версия: 7.0.0.1 Разработчик: ABACOMПлатформа: PCСовместимость с Vista: даСистемные…

Регулировка…

Пропорциональное управление – залог тишины! Какая задача ставится перед нашей системой…

Автоматическое ЗУ…

Доброе время суток. Сегодня речь пойдет об ЗУ для АКБ. ( автоматическом зарядном…