Использование модуля ССР для декодирования команд
ИК пульта – APA1616.

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

apa1616_illissi
Пульт простой, компактный, экономичный питание одна батарейка 3,3 V CR2025. Рассмотрим передачу пульта:

du-01

Начитается передача с формирования синхро импульса, длительность его 13 мс, длительность передачи 0 – 1,14 мс, 1 – 2,23 мс. Кодируется просто начало бита (или синхроимпульса) это отрицательный перепад. Для декодирования необходимо синхронизироваться от отрицательного перепада и измерять длительность. В передачи три байта (24 бита). Информационный последний байт. После передачи команды передается код автоповтора – бит длительностью 11 мс.

du-04

Логика декодирования проста. Ждем отрицательный перепад, измеряем длительность, далее проверяем если длительность больше 13 мс. Это синхробайт. Если больше 10 мс – это автоповтор. Если больше 1,9 мс – передача бита 1. Если больше 0,9 мс – передача – 0.

Декодирование выполним при помощи модуля CCP работающего в режиме ЗАХВАТА.

Настройка модуля, для измерения выберем CCP4:

du-02

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

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

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

Для демонстрации используется ИК порт платы ILLISSI-4С-01-secundo. На ней установлен ИК-приемник с несущей 36 кГц. Хотя пульт использует несущую в 38 кГц. прием вполне приемлемый и габаритах обычной квартиры до 10 метров в прямой видимости работает отлично. При расстоянии до 5 метров возможен уверенный прием и при отраженном сигнале. Если необходима большая чувствительность  то рекомендуется применить приемник с несущей 38 кГц.

Для демо примера используются сборка из плат ILLISSI-4B-03-primum и ILLISSI-4С-01-secundo.

Кодировка пульта простая, в нем 24 клавиши, коды с 0 до 23. Соответствие кодов клавишам.

00 – 01 – 02 – 03
04 – 05 – 06 – 07
08 – 09 – 10 – 11
12 – 13 – 14 – 15
16 – 17 – 18 – 19
20 – 21 – 22 – 23

 


Фото проекта

du-03


Видео проекта

 


Файлы проекта

Версия – 1.1

Обновление v1.4 блокировка автоповтора если нет передачи команды. 


 


Copyright © Catcatcat 2013-2017. Все права защищены.
Копирование разрешается только с указанием активной ссылки на правообладателя.

e-mail: catcatcat.electronics@gmail.com