Универсальный обучаемый пульт или как не стать Шивой Многоруким
Что умеет пульт.
Обучаемый пульт - это пульт, который может запомнить ИК-посылку от другого пульта и потом пытаться ее воспроизвести. Но поскольку форматов команд пультов в мире многое множество - задача становится нетривиальной. Особенно для микроконтроллера ATMEGA8.
Но я надеюсь, что я эту проблему решил хотя бы частично.
Краткие зарактеристики:
Контроллер ATMEGA8A
30 кнопок
Питание 3-5 вольт
Индикация напряжения батарейки, контроль посылки (2 светодиода - красный и зеленый)
Потребление в ждущем режиме ~2 мкА
Пульт распознает несколько распространенных форматов и пытается их эмулировать согласно спецификациям. Неизвестные форматы так же анализируются и пытаются воспроизводиться.
Распознаваемые форматы с эмуляцией согласно спецификаций:
- SONY (SIRC-12, -15, -20 bit), 40 кГц
- NEC, 38 кГц
- SAMSUNG, 38 кГц
- SHARP, 38 кГц
- JVC, 38 кГц
- RC5 (Philips), 36 кГц
- Формат с постоянными паузами, кодирование осуществляется длиной импульса, возможен отдельный стартовый импульс (как у SONY). До 64 бит данных.
- Формат с постоянными импульсами, кодирование осуществляется длиной паузы, возможен отдельный стартовый импульс и стартовая пауза (как у NEC). До 64 бит данных.
- Формат с постоянными импульсами, кодирование различными длинами пауз (как SHARP). До 64 бит данных.
- Формат с постоянным периодом следования импульсов, кодирование длиной импульса.
- Такие форматы посылок пульт так же пытается записать, анализируя длины импульсов и пауз, что бы их потом воспроизвести. В зависимости от сложности формата пульт может сохранить до 16 или до 32 импульсов. Про такое сохранение будет чуть ниже.
Изначально пульт был сделан в 12-кнопочном варианте, в корпус автомобильного пультика на руль. Но потом схема "повзрослела" до 30 кнопок.
К повторению предлагается вариант в 21-кнопочный китайский пульт "IR remote control HX1838 for Arduino" либо макси-версия - 30-кнопочный пульт с тактовыми кнопками - плата размерами 115*40 мм.