Автор текста: OldFashionedEngineer
Больше интересных фотографий и комментариев в оригинальном материале

Задумывались ли вы когда-нибудь, сколько стандартных логических микросхем потребуется для создания полноценного инфракрасного пульта дистанционного управления? Этот вопрос может показаться странным в эпоху микроконтроллеров, но именно он однажды озадачил автора. Если вы знакомы с его предыдущими работами, то знаете о страсти к схемотехническим решениям на дискретных элементах. Не все идеи доходят до этапа пайки, многие остаются в виде виртуальных моделей, как и проект, описанный ниже. Однако он достаточно интересен, чтобы поделиться им с аудиторией, уставшей от новогодних праздников и готовой к техническим деталям.
Поводом для разработки послужил запрос друга из Ярославля, которому понадобилась идея для конкурса по электронике среди студентов. Формат соревнований идеально совпал с хобби автора — созданием устройств на «жесткой логике». Задача состояла в том, чтобы предложить нечто более сложное, чем простой «моргающий светодиод», а интеллектуальное устройство. В архиве нашлась схема ИК-пульта, использующего протокол RC-5. Эта идея, сочетающая модуляцию, интересное кодирование и схемотехнические задачи, была одобрена и взята в работу.
❯ Формат RC-5: минимализм и эффективность
Протокол RC-5 — это классика, демонстрирующая инженерный минимализм. Он был создан в эпоху, когда вычислительные ресурсы в схемах экономили, в отличие от сегодняшнего дня, когда любой протокол можно легко реализовать на Arduino. Современные описания часто упускают ключевые особенности этого формата.
В RC-5 применяется двухфазная модуляция, известная как Манчестерский код. Его главное достоинство — самосинхронизация, позволяющая передавать двоичные данные по одному каналу без отдельного сигнала синхронизации.

Длительность передачи одного бита фиксирована и составляет 1,778 мс. Логический ноль кодируется как высокий уровень в первой половине периода и низкий — во второй. Для логической единицы — наоборот. Такой код легко получить, выполнив операцию XOR между тактовым сигналом (меандр с заполнением 50%) и данными. Если вспомнить таблицу истинности XOR, принцип становится понятен.

Выбор длительности бита в 1,778 мс не случаен. Для защиты от фоновых ИК-помех (например, от люминесцентных ламп) сигнал модулируется частотой 36 кГц. За время передачи одного бита укладывается ровно 64 импульса несущей. Стандартный скважность несущей — 3 или 4, что упрощает фильтрацию на стороне приемника.
Пакет данных RC-5 состоит из 14 бит, что, как мы увидим далее, удобно для схемотехнической реализации. Общее время передачи пакета — 24,9 мс.

Передача всегда начинается с двух стартовых битов, имеющих значение логической «1». При Манчестерском кодировании знание первого бита критически важно для правильной интерпретации всего последующего потока. Эти биты также служат для синхронизации приемника.
Третий бит — триггерный (бит управления). Он инвертирует свое состояние при каждом новом нажатии кнопки. Если же кнопка удерживается, пакеты повторяются каждые 114 мс, но значение триггерного бита остается прежним. Это позволяет различать многократные нажатия и длительное удержание.
Пять бит системного адреса (S4 – S0) позволяют выбрать одно из 32 стандартных устройств (телевизор, видеомагнитофон и т.д.). Шесть бит команды (C5 – C0) также были стандартизированы компанией Philips.
Изначально это позволяло избежать конфликтов между пультами разных устройств. Однако, как часто бывает, китайские производители использовали коды по своему усмотрению, что иногда приводит к курьезным ситуациям, когда пульт от люстры может регулировать громкость телевизора.
❯ Структурная схема пульта
С учетом ограничений конкурса (количество элементов, площадь платы) функционал пульта был ограничен десятью кнопками. Функция повторной отправки при удержании кнопки не реализована, но ее можно добавить при необходимости. Итоговая блок-схема представлена ниже, с указанием микросхем в каждом блоке.

Клавиатура и приоритетный шифратор

Обработка нажатий кнопок реализована на приоритетном шифраторе CD4532. Для расширения до десяти кнопок использованы три логических элемента ИЛИ (микросхема 74HC32). Альтернативой могло быть каскадирование двух шифраторов, но использование вентилей ИЛИ позволило оптимизировать количество корпусов, так как один такой вентиль уже требовался в другой части схемы.
Кнопки подтянуты к земле через резисторы для исключения «плавающих» входов.
Обратите внимание: Куда звонить по вопросам коронавируса в Сочи: публикуем список телефонов.
Для подавления дребезга контактов параллельно каждой кнопке можно установить конденсатор емкостью 0,1 мкФ.Вывод GS (Group Signal) микросхемы U6 фиксирует факт нажатия любой кнопки. Дифференцирующая цепь C7-R9 работает как детектор фронта, формируя короткий импульс для запуска всей схемы формирования пакета. На выходах d0-d3 формируется двоичный код нажатой кнопки.

Формирователь сообщения

Код кнопки поступает в узел формирования сообщения, построенный на двух сдвиговых регистрах 74HC165. Поскольку RC-5 — последовательный протокол, здесь используются регистры с параллельной загрузкой и последовательным выводом.
В качестве инвертора задействован элемент XOR, что позволило обойтись без отдельного корпуса инверторов (NOT).
Сигнал записи через этот инвертор блокирует входы регистров, фиксируя данные в момент нажатия кнопки для последующей последовательной передачи.
Входы D0-D4 регистра U1 подключены к земле, формируя нулевой адрес устройства (0h — адрес телевизоров по классификации Philips). При необходимости адрес можно изменить, подключив эти линии к питанию.

Битовый переключатель

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

Отправка сообщений и тактирование

Сигнал записи также переключает другой триггер (U3:A), который активирует схему тактирования на основе счетчика 74HC393.
Задача этой схемы — подать ровно 14 тактовых импульсов на сдвиговые регистры для вывода всех бит пакета.
Триггер U3:A удерживает счетчик U2:A в сбросе до появления сигнала записи. Благодаря диодной логике ИЛИ (D3-D6) счетчик будет инкрементироваться, пока хотя бы на одном из его выходов Q0-Q3 низкий уровень.
При появлении 15-го тактового импульса все выходы счетчика становятся высокими, что через элемент ИЛИ U4:A переключает триггер U3:A и останавливает процесс. Таким образом, 15-й импульс от генератора не доходит до регистров, и схема формирует ровно 14 тактов.

Бифазный модулятор

Принцип работы модулятора, реализующего Манчестерское кодирование, должен быть понятен из описания протокола.
Модуляция несущей частотой 36 кГц выполняется генератором на таймере NE555 (U9). Современные ИК-приемники (например, TSOP) имеют встроенные фильтры и не столь критичны к точному количеству импульсов несущей.
В качестве излучателя должен использоваться инфракрасный светодиод с длиной волны 940 нм — самый распространенный для пультов ДУ. Отклонение длины волны может существенно снизить дальность действия.
Немного о питании схемы
Схема может питаться от трех или четырех последовательно соединенных батареек ААА. Альтернативный вариант — две батарейки с повышающим стабилизатором на 5В. Наличие стабилизатора напряжения предпочтительнее, так как позволяет максимально использовать емкость батарей.
❯ Итоги проектирования
Предварительная разводка печатной платы подтвердила жизнеспособность конструкции. Для реализации ИК-пульта в формате RC-5 потребовалось всего девять корпусов микросхем в SOIC-корпусах, два из которых — 8-ногые. Все компоненты компактно размещаются в корпусе классического телевизионного пульта.

Остается открытым вопрос энергопотребления. Схема на дискретной логике, очевидно, будет потреблять больше, чем специализированные микросхемы, уходящие в глубокий сон между нажатиями.
Несмотря на завершенность проекта, схема так и не была спаяна в железе. В процессе ее разработки автор с другом придумали другую концепцию для конкурсного задания. Тем не менее, данная разработка служит отличной учебной головоломкой для глубокого понимания принципов цифровой схемотехники.
Причины, по которым проект не был реализован физически, могут стать темой отдельной статьи.
Если вам понравилась эта статья, пожалуйста, ознакомьтесь с другими моими проектами:
1. Простая схема динамических поворотников, и никаких микроконтроллеров
2. Светодиодная шкала переменного сопротивления на «сыпучей» основе
3. Логический светофор со схемотехникой в стиле Битлз. Как электроника снова стала моим хобби
4. Профессиональные методы прототипирования печатных плат. Пресс или мельница, ни слова о железе
5. Бердекель или арифметический детектив на операционных усилителях
6. Электронная игра «Лабиринт» на сервоприводах. Никакого ардуино, только жесткая логика
7. Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать это самостоятельно?
8. ЛПКФ ПротоМат С63. Мыши плакали, делали уколы, но.. продолжали шлифовать платы
9. Аудиоусилитель на базе драйвера шагового двигателя L298 и 555 часов. Да, 555 умеют петь
10. Графический анализатор спектра с динамическим отображением на основе жесткой логики
11. Цифровой термометр с жесткой логикой
[мин]ЭлектроникаТехнологииЭлектрикаTimewebТВ-схемы ГаджетыИнформативноДлинный пост 11Больше интересных статей здесь: Гаджеты.
Источник статьи: IR remote control, а без микроконтроллеров можно? Да не вопрос.