Протокол RC5 структура, теория декодера.

Немного истории:

Все радиолюбители да и не только, задумывались об идее управления объектом на расстоянии без прямого физического контакта с самим объектом. И конечно же в голову сразу же приходила идея использовать радиоканал, то есть радио, изобретенное Великим русским ученым Александром Степановичем Поповым, кстати когда американцы говорят что радио изобрел Маркони, я сразу же вспоминаю что они говорят что и Вторую Мировую они выиграли, но мы то знаем как оно на самом деле :-)
Так вот, сложность работы с радиоканалом в том, что необходимо собрать более менее качественный передатчик и иметь приемник, который работает именно в этом диапазоне частот. Людям, которые мало знакомы с аналоговой техникой а именно с настройкой колебательных контуров, с структурой гетеродинного приемника и тд. тп. данные задачи могут показаться нерешаемыми и затратными по времени и по финансам(если рассматривать вариант покупки готовых гетеродинов на частоту 433МГц к примеру). Если задачи управления объектом не содержат жестких требований по дальности (до 10м) то в принципе можно применить решение, которым пользуются все производители бытовой электроники, а именно пульты дистанционного управления на ИК(инфра-красных лучах).

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

Протокол RC5:

Протокол RC5 это хороший пример пакетной передачи данных, когда сами данные делятся на блоки-пакеты. Пакет по протоколу RC5 содержит 14 бит (последовательность из 14 цифр двоичной системы исчисления, единичек и ноликов).

RC5 структура пакета

Назначение битов в протоколе RC5:

Первые два бита называются стартовыми их значение обычно всегда равно единице. После стартовых битов следует триггерный бит, значение триггерного бита меняется при каждом нажатии на кнопку (то есть, если зажать и держать кнопку на пульте ДУ значение триггерного бита не будет меняться).
После идут 5 битов идентифицирующих адрес устройства. В самом конце идут 6 битов собственно команды.

Длительность пакета протокола RC5:
Длительность одного пакета с точки зрения времени составляет (по стандарту) 1,778 х 14 = 25мс.
Где 1,788 - это время приема/передачи одного бита,
14 - число битов.
По протоколу RC5 после передачи пакета выполняется пауза, задержка на 89мс. Что в сумме дает значение 25 + 89 = 114мс. То есть на прием одной команды необходимо потратить 114мс.

Смена с низкого уровня на высокий определяет передачу 0-ля, смена с высокого на низкий уровень подразумевает передачу 1-цы.

Рабочий пример программы обработки RC5, комментарии облегчат понимание программы.

"то есть радио, изобретенное

"то есть радио, изобретенное Великим русским ученым Александром Степановичем Поповым, кстати когда американцы говорят что радио изобрел Маркони, я сразу же вспоминаю что они говорят что и Вторую Мировую они выиграли, но мы то знаем как оно на самом деле :-)"

Неправда!

Историю надо учить не смотря в телебредоящик, а изучая труды компетентных источников (где же они? :))

Хронология_радио

История и изобретение радио

Цитирую из того источник что

Цитирую из того источник что Вы и указали:

"Однако у Маркони, как и у большинства авторов крупных изобретений, были предшественники. В России изобретателем радио считается А. С. Попов[3], создавший в 1895 г. чувствительный и надёжно работавший радиоприёмник, пригодный для радиосвязи"

Вывод: Маркони - ЛОХ! Попов Александр Степанович - человек - легенда! О как!

Ключевые строки по первой

Ключевые строки по первой ссылке:

Ключевое изобретение в начале "беспроводной передачи данных, использующей весь частотный спектр", известное как передатчик с искровым разрядником, приписывается Никола Тесла, Гульельмо Маркони и Александру Попову.

Тесла разработал устройства для надежной генерации радиосигналов, публично продемонстрировал принципы радиосвязи и первым передал радиосигналы на большие расстояния.

1893: В Сент-Луисе (США) Никола Тесла представил общественности демонстрацию беспроводной радиосвязи. ...он подробно рассказал о принципах радиосвязи.

Тесла был первым, кто применил явление электрической проводимости для практических целей беспроводной связи

И лишь одна строка про нашего соотечественника:
1895: Российский физик Александр Степанович Попов продемонстрировал аппарат для приёма электромагнитных волн.

Ключевые строки по второй ссылке:

1891 — Никола Тесла (Сент-Луис, штат Миссури, США) в ходе лекций публично описал принципы передачи радиосигнала на большие расстояния.

alman

Ну да как я и говорил, Попов

Ну да как я и говорил, Попов изобрел радио. А Макрони... а кто такой Маркони? По моему это пицца, или Пеперони.