Modern technology gives us many things.

Декодер протокола RC-5 на микросхемах стандартной логики

61

Уровень сложности Средний Время на прочтение 7 мин Количество просмотров 2.6K Блог компании Timeweb Cloud Схемотехника *Производство и разработка электроники *DIY или Сделай сам Электроника для начинающих Кейс

Декодер протокола RC-5 на микросхемах стандартной логики

В прошлой статье я рассказал о схеме ИК пульта дистанционного управления, выполненном на микросхемах стандартной логики. В этот раз мне хочется продолжить эту тему и предложить вашему вниманию схему декодера RC-5, которая также выполнена только на логических микросхемах и таймерах.

Данная схема позволяет принимать команды от стандартного ИК пульта управления и выводит принятый код команды на семисегментный индикатор, и все это без единого микроконтроллера. Вы будете удивлены, на сколько простой получилась схема.

Я уже писал, что взялся помочь с разработкой задания для конкурса по электронике. Схему пульта на жесткой логике в конечном итоге мы забраковали, т.к. нужно было снабдить каждого конкурсанта дополнительным устройством, которое принимало бы команды от пульта для проверки его работоспособности. Поэтому было решено купить недорогие пульты, а вот декодер выдать в качестве задания для конкурсантов. Решено, и я снова принялся за проектирование.

Если вы не читали прошлую статью, предлагаю предварительно ознакомиться с ней по этой ссылке.

❯ Структурная схема

Для меня процесс разработки структурной схемы это как решение головоломки. На этом этапе я определяю необходимое количество функциональных блоков и связи между ними. Также примерно прикидываю, какие схемотехнические решения могут подойти для каждого функционального блока. А уже после этого начинаю отрабатывать каждый кусок схемы по отдельности и складывать из них общую электрическую схему.

Не будем пропускать этот важный шаг и в этот раз. На рисунке ниже показана структурная схема декодера RC-5, которая у меня получилась. Дальше вы увидите, что не все элементы структурной схемы понадобятся при реализации электрической.

Декодер протокола RC-5 на микросхемах стандартной логики

Давайте постепенно разбираться, как работает моя схема.

❯ Прием ИК сигнала

ИК пульты дистанционного управления обычно используют светодиоды с длинной волны 940нм, и модулируют сигнал на частоте 36кГц для исключения влияния фоновой засветки. Самым рациональным и простым способом принять такой сигнал было бы применить специализированный приемник типа TSOP. Он сразу имеет в своем составе все необходимое: фототранзистор, демодулятор на 36кГц, схему автоматического регулирования усиления, удобный диапазон питания и выход с открытым коллектором.

Декодер протокола RC-5 на микросхемах стандартной логики

Но это же задание для конкурса, поэтому мы пошли другим путем, использовали фототранзистор и фильтры на операционных усилителях, ни каких АРУ и прочих наворотов. В рамках статьи опустим этот нюанс, и будем считать, что прием и демодуляция ИК сигнала производится специализированным ИК датчиком.

Читать на TechLife:  Самый надежный хетчбэк в мире подешевел в России. Сколько просят за новый Suzuki Swift в начале 2024?

❯ Самосинхронизация декодера по сигналу пульта

Итак, в основе кода RC-5 используется манчестерское кодирование, основным преимуществом которого является самосинхронизация. Посылка от пульта к декодеру передается последовательно по одному каналу. И для приема данных декодер с пультом должен синхронизироваться. Для этого из посылки необходимо извлечь сигнал синхронизации.

Чтобы разобраться, как получить сигнал синхронизации, посмотрим на произвольную посылку, которую можно принять от пульта дистанционного управления.

Декодер протокола RC-5 на микросхемах стандартной логики

Такую посылку будет отправлять пульт управления телевизором при нажатии на цифру 9. Обратите внимание, что не зависимо от состояния бита данных, в середине каждого периода обязательно происходит смена уровней. При передаче единицы происходит переход из низкого уровня в высокий, а при передаче нуля наоборот.

Декодер протокола RC-5 на микросхемах стандартной логики

Именно благодаря такому способу кодирования, по переходу в середине периода можно синхронизировать приемник под битовую скорость пульта дистанционного управления.

Давайте рассмотрим принцип работы схемы детектирования сигнала синхронизации.

Я уже говорил, что ИК приемник имеет выход с открытым коллектором, при наличии ИК импульсов он открывает встроенный транзистор и «переворачивает» сигнал пульта управления. Чтобы вернуть сигнал в исходное положение используется логический вентиль XOR U1:A, включенный как инвертор. Фильтр нижней частоты на R1-C1 необходим для того, чтобы снизить влияние внешних помех.

Декодер протокола RC-5 на микросхемах стандартной логики

«Выуживать» синхронизацию из посылки будем схемой детектора переходов на основе одного логического вентиля XOR U1:B.

Из-за интегрирующей цепочки R2-C2 импульсы на второй вход XOR приходят с небольшой задержкой, ее хорошо видно на общем графике по середине рисунка. За счет этого при смене уровня сигнала manchester входы элемента XOR на короткий период принимают разные значения. Логический элемент XOR детектирует эту неравнозначность и выдает короткий импульс на своем выходе. Длительность импульса определяется порогами переключения входов и номиналами интегрирующей цепочки.

Из сигнала синхронизации необходимо сделать тактовые импульсы «правильной» формы. Для этого воспользуемся таймером U2 NE555 по стандартной схеме одновибратора.

Декодер протокола RC-5 на микросхемах стандартной логики

Импульс запуска одновибратора должен иметь обратную полярность, чтобы перевернуть сигнал синхронизации используем логический вентиль XOR U1:C по схеме инвертора.

Не удивляйтесь, что вместо инверторов я использовал XOR в обоих случаях. Микросхема 74НС86 имеет четыре вентиля. Один я использовал для детектора переходов, осталось еще три. Их можно либо не использовать, и они будут просто занимать место на плате и жрать питание, а можно использовать как инверторы и сократить количество микросхем в схеме.

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

Читать на TechLife:  Huawei окончательно «переварила» санкции США? Выручка компании приблизилась к 100 млрд долларов

Декодер протокола RC-5 на микросхемах стандартной логики

В итоге тактовый сигнал перекрывает «нежелательные» импульсы и имеет частоту, равную битовой скорости пульта управления. Ловко, не правда ли? А дальше вы увидите, что смещение тактового сигнала на половину периода нам только на руку.

Давайте еще раз посмотрим, как происходит манчестерское кодирование одного бита. По сути, получается, что наш бит целехонький помещается во второй половине периода. А впервой находится его инверсная копия для обеспечения синхронизации. И нам только остается записать принятый бит в сдвиговый регистр. Очень удобно, не правда ли?

Декодер протокола RC-5 на микросхемах стандартной логики

❯ Защита от потери данных и определение конца сообщения

При передаче данных по средствам эфира нет никакой гарантии, что наш декодер получит все сообщение целиком. Да и мало ли еще помех летает в воздухе? Поэтому схема должна обрабатывать предельное время приема одной единицы данных. Если схема не получит следующий бит данных вовремя, она должна перейти к исходному состоянию и ждать следующую посылку.

Декодер протокола RC-5 на микросхемах стандартной логики

Схема построена на счетчике 74НС393. На счетный вход подаются импульсы на частоте примерно 3кГц, это значение подобранно примерно таким образом, чтобы схема срабатывала при потере одного тактового импульса. При регулярном наличии тактового сигнала clk, счетчик практически не успевает вести счет. Но, если тактовый импульс пропадет, счетчик U4:B считает до переполнения, и формирует сигнал timeout, который в свою очередь сбрасывает всю схему в исходное состояние и удерживает его.

Дополнительные логические вентили U3:A, U3:B, U3:C необходимы, чтобы остановить счетчик при отсутствии тактового сигнала. Если убрать их из схемы, то счетчик продолжит счет после переполнения. Сигнал timeout при этом будет пульсировать, а вся схема станет работать не корректно. Посмотрите, как изменятся графики сигналов при их отсутствии.

Декодер протокола RC-5 на микросхемах стандартной логики

Второй вентиль этого же счетчика отмеряет длину принятой посылки. Чтобы не добавлять еще одну микросхему и просто для схемотехнического разнообразия, в схеме используется монтажное И на диодах. Немного двоичной магии, и счетчик отсчитывает ровно 14 тактовых импульсов. А выходной сигнал endPack может защелкнуть выходной буфер сдвигового регистра.

Декодер протокола RC-5 на микросхемах стандартной логики

❯ Запись кода команды

Запись кода команды производится в две микросхемы сдвиговых регистров 74HC595, включенных последовательно друг за другом. Код команды записывается в младшие биты выходов. Если не обрабатывать биты адреса в посылке, можно было бы обойтись и одним регистром.

Декодер протокола RC-5 на микросхемах стандартной логики

К выводам Q0-Q3 регистра U5 можно подключить семисегментный дешифратор, за ним светодиодный индикатор и наблюдать коды принятых команд.

Читать на TechLife:  Nubia Z60 Ultra опровергнет тезис о бесполезности сверхширокоугольных камер в смартфонах

На следующем графике вы можете увидеть, как происходит переключение выходов сдвигового регистра при последовательной передаче кодов 9, 6 и 0.

Декодер протокола RC-5 на микросхемах стандартной логики

❯ Электрическая схема

Давайте посмотрим, что получилось в итоге. Электрическая схема построена всего на 5 микросхемах стандартной логики и двух 555 таймерах. Один генератор на 3 кГц я не нарисовал, он тоже реализован на NE555. Не так уж и плохо для технологии из прошлого века?

Декодер протокола RC-5 на микросхемах стандартной логики

И, я просто обязан вам показать, за что так люблю ISIS Proteus. Не нужно пытаться убеждать меня в том, что виртуальное моделирование электрических схем это просто игрушка. Вы же можете позволить себе вечерком запустить доту или каэску? А кто-то до сих пор шпилит в героев! Тогда, почему я не могу вечерком побаловаться в симуляторе электронных схем?

Декодер протокола RC-5 на микросхемах стандартной логики

❯ Сборка макета

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

Декодер протокола RC-5 на микросхемах стандартной логики

Ну и конечно же демонстрация устройства в работе. Для этого нашли первый попавшийся ИК-пульт от телека.

Конкурс по электронике прошел успешно… в 2018 году. Дети остались довольны. Даже страшно подумать, что эти мальчишки на фотке уже взрослые мужики!

Декодер протокола RC-5 на микросхемах стандартной логики

Декодер протокола RC-5 на микросхемах стандартной логики

Если вам понравилась эта статья, то вы можете посмотреть другие мои проекты. Ссылки на них вы можете найти под спойлером.

  • 1. Простая схема динамических указателей поворотов, и никаких микроконтроллеров
  • 2. Светодиодная шкала для переменного резистора на «рассыпухе»
  • 3. Светофор на логике со схемотехникой в стиле Beatles. Как электроника вновь стала моим хобби
  • 4. Профессиональные методы прототипирования печатных плат. Распечатать на принтере или фрезеровать, ни слова про утюг
  • 5. Бирдекель или арифметический детектив на операционных усилителях
  • 6. Электронная игра «лабиринт» на сервоприводах. Никаких arduino, только жесткая логика
  • 7. Велосипедный фонарь с динамическими поворотами. Зачем покупать на AliExpress, если можно сделать самому?
  • 8. LPKF ProtoMat S63. Мыши плакали, кололись, но… продолжали фрезеровать печатные платы
  • 9. Звуковой усилитель на драйвере шагового двигателя L298 и таймере 555. Да, 555-й может и спеть
  • 10. Графический спектроанализатор с динамической индикацией на жесткой логике
  • 11. Цифровой термометр на жесткой логике

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста. Хотели бы вы подробнее узнать о том, как моделировать схемы в ISIS Proteus? 88.24% Да, это было бы интересно. Тем более, что мне уже давно надоело часами смотреть за анимацией в симуляторах. Хочу освоить транзиентные способы анализа. 30 11.76% Да… ну на фиг, моделирование электрических схем для школяров, я схемы в уме могу моделировать! 4 Проголосовали 34 пользователя. Воздержались 2 пользователя. Теги:

  • timeweb_статьи
  • схемотехника
  • diy
  • электроника
  • электроника для начинающих
  • электроника своими руками
  • электроника шаг за шагом
  • жесткая логика
  • стандартная логика
  • схемотехника для начинающих

Хабы:

  • Блог компании Timeweb Cloud
  • Схемотехника
  • Производство и разработка электроники
  • DIY или Сделай сам
  • Электроника для начинающих

Источник

Оставьте ответ

Ваш электронный адрес не будет опубликован.

©Купоно-Мания.ру