Страница 1 из 3 123 Последняя
Показано с 1 по 20 из 51

Тема: Дешифратор команд ДУ NEC формата

  1. #1
    Завсегдатай
    Автор темы
    Аватар для antecom
    Регистрация
    10.02.2005
    Адрес
    Королев
    Возраст
    51
    Сообщений
    2,923

    По умолчанию Дешифратор команд ДУ NEC формата

    Ко мне обратились несколько форумчан, купивших РГ Никитина с ДУ и желающих управлять дополнительной периферией с того же пульта. Поэтому я решил сделать несложный проект на ATmega48, декодирующий команды ДУ формата NEC и включающий один из 12 выходов.
    Микроконтроллер ATmega48 имеет 22 вывода общего назначения, которые я распределил следующим образом.
    1 вывод – ИК фотоприемник
    1 вывод – светодиод
    8 выводов – кнопки (обозначены на схеме Buttons 1 – 8)
    12 выводов – выходы (обозначены на схеме OUT1 – OUT12)
    К устройству можно “привязать” 12 кнопок (по кол-ву выходов) любого пульта NEC формата. Каждая кнопка пульта (назовем их кнопки 1 – 12) включает или выключает одноименный выход устройства. Кнопки 1-8 устройства дублируют кнопки 1-8 пульта.

    Программа выполнена в двух трех четырех вариантах (файлы IRConrt1, IRContr2, IRContr3 и IRContr4.7z)

    IRContr1:
    Исходное состоянии всех выходов – лог.0
    Выходы 1 - 8 работают “с защелкиванием”, т.е. первое нажатие кнопки 1 - 8 включает выход, повторное выключает.
    Выходы 9 - 12 переводятся в единичное состояние при нажатии и удержании кнопки 9 - 12 пульта и возвращаются в нулевое состояние при отпускании кнопки. Эти выходы можно использовать, например, для вращения моторизированного переменника.

    IRContr2:
    Исходное состоянии всех выходов – сконфигурированы как входы с внутренними резисторами “подтяжки” к +5V.
    При нажатии и удержании кнопки 1 - 12 одноименный выход переводятся в нулевое состояние (замыкается на корпус) и возвращается в исходное состояние при отпускании кнопки. В этом варианте выходы устройства можно подключить параллельно кнопкам (при условии что один вывод кнопки заземлен) какого либо аппарата, не имеющего своего пульта.

    IRContr3: см. пост 7

    IRContr4.7z: см.пост 23

    Для привязки пульта необходимо подать питание, удерживая нажатой кнопку 1 устройства. Через 4 секунды светодиод 3 раза мигнет – Вы вошли в режим привязки. Далее нужно просто последовательно нажать привязываемые 12 кнопок. Нажатие каждой кнопки сопровождается миганием светодиода. Кол-во миганий соответствует номеру кнопки. Если вместо привязки очередной кнопки пульта нажать кнопку 1 устройства, код данной кнопки затирается. Если Вы ошиблись, процедуру привязки нужно повторить сначала. После привязки 12-й кнопки устройство переходит в рабочий режим.

    Светодиод, помимо привязки пульта, используется для индикации нахождения микроконтроллера к активном режиме. Когда он погашен, МК переведен полностью в статический режим с остановленным тактовым генератором.

    Для прошивки AVR микроконтроллеров не обязательно иметь программатор. Достаточно подключить МК к параллельному порту компьютера 5-ю проводками. Подробнее здесь http://real.kiev.ua/avreal/
    Прошивка (файл с расширением hex), находится в архиве в папке exe.
    При программировании контроллера, необходимо также поменять состояние 2-х фьюзов, выставив:
    CKDIV8 – off
    BODLEVEL1 - on

    Программа написана на С для компилятора CodeVisionAVR (ver.2.03.9) демоверсию которого (ограничение на размер кода 3kB) можно скачать с оф. сайта http://www.hpinfotech.ro/
    Размер сабжевых прошивок около 1kB.
    Для желающих освоить программирование МК рекомендую книгу А.В.Белов “Самоучитель разработчика устройств на микроконтроллерах AVR” Наука и Техника, Санкт-Петербург 2008.

    Если Вы слегка поменяете алгоритм, взяв за основу данные программы, прошу выкладывать модернизированный вариант вместе с исходниками - он может пригодиться другим.
    Вложения Вложения
    Последний раз редактировалось antecom; 07.03.2016 в 10:43.

  2. #2
    Частый гость Аватар для YUPOL
    Регистрация
    17.02.2006
    Адрес
    Ближайшее Подмосковье.
    Сообщений
    418

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Максим, привет!
    Нужное устройство, был бы в виде кита, купил бы.
    Юра.

  3. #3
    Новичок Аватар для Stas-box
    Регистрация
    08.07.2009
    Адрес
    Кемеровская область, г.Берёзовский.
    Сообщений
    25

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Спасибо Макс!

    ---------- Добавлено в 21:10 ---------- Предыдущее сообщение в 20:32 ----------

    Макс, ты сам какой схемой программатора пользуешься?

  4. #4
    Завсегдатай
    Автор темы
    Аватар для antecom
    Регистрация
    10.02.2005
    Адрес
    Королев
    Возраст
    51
    Сообщений
    2,923

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    YUPOL, Привет Юра!
    Насчет кита не уверен, но может и сделаю - время покажет.
    Цитата Сообщение от Stas-box Посмотреть сообщение
    Макс, ты сам какой схемой программатора пользуешься?
    Промышленным Sterh ST-007. Удобен, но не дешев. Был куплен на работу, сам бы не стал разоряться. До него использовал "5 проводков" с AVReal по ссылке из первого поста. Тоже шьет без проблем.

  5. #5
    Новичок Аватар для Stas-box
    Регистрация
    08.07.2009
    Адрес
    Кемеровская область, г.Берёзовский.
    Сообщений
    25

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    antecom, Под какой операционной системой шил?

  6. #6
    Завсегдатай
    Автор темы
    Аватар для antecom
    Регистрация
    10.02.2005
    Адрес
    Королев
    Возраст
    51
    Сообщений
    2,923

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Под XP.
    С Вистой и Windows7 не пробовал, за неимением.

  7. #7
    Завсегдатай
    Автор темы
    Аватар для antecom
    Регистрация
    10.02.2005
    Адрес
    Королев
    Возраст
    51
    Сообщений
    2,923

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Сделал на заказ ещё один вариант прошивки IRContr3. Выложен вместе с исходниками в первом сообщении. Схема осталась без изменений. Поддерживается “привязка” 10-ти кнопок пульта. Кнопки 1-8 устройства дублируют кнопки 1-8 пульта.

    Функционал:

    Кнопка 1 – выполняет роль кнопки Power -> включает выход OUT1, переводит устройство из дежурного режима в рабочий и обратно. Кнопка срабатывает с задержкой 0.3с на включение и 0.7с на выключение. После подачи напряжения питания, устройство находится в дежурном режиме.
    Кнопки 2 - 6 работают с “защелкиванием”, включают/выключают выходы OUT2 – OUT6.
    Кнопки 7, 8 (</>) включают по кругу один из выходов OUT9 – OUT12 (управление реле селектора входов).
    Кнопки 9, 10 (только кнопки пульта) при нажатии и удержании переводят в единичное состояние выходы OUT7, OUT8 соответственно и возвращают выходы в нулевое состояние при отпускании кнопки (вращение моторизированного переменника).

    Состояние выходов OUT2 – OUT6 и OUT9 – OUT12 запоминается при выключении питания (если сначала выключить кнопкой Power, потом снять питание).
    Светодиод загорается в рабочем режиме и гаснет в дежурном. В дежурном режиме все выходы сброшены (в “0”).

  8. #8
    Завсегдатай Аватар для aal
    Регистрация
    04.11.2004
    Адрес
    пос. Краснообск, Новосибирская область
    Возраст
    52
    Сообщений
    2,860

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    2 antecom - вы не будете возражать, если часть вашего кода будет использоваться в коммерческом проекте? Не в данном виде, а как часть проекта - ещё одна задача МК? Я много что делал, а вот IR нет. Авторство основы пп ДУ будет указано.

  9. #9
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    62
    Сообщений
    37,518

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Цитата Сообщение от aal Посмотреть сообщение
    2 antecom - вы не будете возражать, если часть вашего кода будет использоваться в коммерческом проекте?
    Если не разрешит - возьми мой, он свободно выложен. Все равно тут больше половины того что на форуме с ИК делают, у меня слизано....
    Заодно и он на 5 протоколов а не на один НЕК
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Да мне-то что, меняйтесь!"(с)анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  10. #10
    Завсегдатай
    Автор темы
    Аватар для antecom
    Регистрация
    10.02.2005
    Адрес
    Королев
    Возраст
    51
    Сообщений
    2,923

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    aal, не возражаю, если этот проект не регулятор Никитина

  11. #11
    Завсегдатай Аватар для aal
    Регистрация
    04.11.2004
    Адрес
    пос. Краснообск, Новосибирская область
    Возраст
    52
    Сообщений
    2,860

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Нет. Не регулятор - микшер спдиф + управление режимами модуля.

    Алексей, у вас я только статью нашёл, а исходника не видел - не ткнёте носом? Я всё время путаюсь в вашем сайте....

  12. #12
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    62
    Сообщений
    37,518

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Цитата Сообщение от aal Посмотреть сообщение
    Алексей,
    Я не Алексей

    Цитата Сообщение от aal Посмотреть сообщение
    у вас я только статью нашёл,
    Одну? Значит, ищи остальные...

    Цитата Сообщение от aal Посмотреть сообщение
    а исходника не видел - не ткнёте носом? Я всё время путаюсь в вашем сайте....
    А там чтобы "не путаться" - в конце странички "Статьи" есть целеуказание
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Да мне-то что, меняйтесь!"(с)анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  13. #13
    Завсегдатай Аватар для Elms
    Регистрация
    21.12.2008
    Адрес
    Москва
    Возраст
    56
    Сообщений
    3,415

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    У меня вопрос - в каком из вариантов включение одного из каналов с защёлкиванием сбрасывает остальные?

  14. #14
    Завсегдатай
    Автор темы
    Аватар для antecom
    Регистрация
    10.02.2005
    Адрес
    Королев
    Возраст
    51
    Сообщений
    2,923

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Цитата Сообщение от Elms Посмотреть сообщение
    У меня вопрос - в каком из вариантов включение одного из каналов с защёлкиванием сбрасывает остальные?
    В третьем варианте прошивки - IRContr3, цитирую из 7-го поста: "Кнопки 7, 8 (</>) включают по кругу один из выходов OUT9 – OUT12 (управление реле селектора входов)."
    Во всех других вариантах прошивки, выходы работают независимо друг от друга, т.е. не сбрасываются.

  15. #15
    Завсегдатай Аватар для UFHBY
    Регистрация
    20.05.2008
    Адрес
    Ханты
    Возраст
    55
    Сообщений
    1,360

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    antecom, это пять! Плюс стопицот! Дело идёт к тому, что я вообще с дивана вставать не буду. Максим, а возможно будет перешить мегу48, выпаянную из твоей платы управления РГ? Она у меня валяется, вместо ней впаяна 88-ая со второй версией ПО. Просто я сними дела не имел вообще. Пики шил и перешивал, здесь так же?
    The Best Things Are Left Unspoken

  16. #16
    Завсегдатай
    Автор темы
    Аватар для antecom
    Регистрация
    10.02.2005
    Адрес
    Королев
    Возраст
    51
    Сообщений
    2,923

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Цитата Сообщение от UFHBY Посмотреть сообщение
    Максим, а возможно будет перешить мегу48, выпаянную из твоей платы управления РГ? Она у меня валяется, вместо ней впаяна 88-ая со второй версией ПО.
    Можно, конечно. Фьюзы оставить как есть и просто зашить hex файл.
    Цитата Сообщение от UFHBY Посмотреть сообщение
    Просто я сними дела не имел вообще. Пики шил и перешивал, здесь так же?
    Наверное также. Я в свою очередь, с пиками дел не имел.

  17. #17
    Новичок
    Регистрация
    26.01.2010
    Сообщений
    53

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Ребят, есть кто может 4ый вариант прошивки сделать и прошить? Нужно вместо двух каналов с защелкиванием сделать эмуляцию энкодера.
    Не безвозмездно само собой.

  18. #18

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Критично заменить ИК приемник с 38кГц на 36кГц, ну нету поблизости на 38...?

  19. #19
    Завсегдатай
    Автор темы
    Аватар для antecom
    Регистрация
    10.02.2005
    Адрес
    Королев
    Возраст
    51
    Сообщений
    2,923

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Цитата Сообщение от applepart Посмотреть сообщение
    Критично заменить ИК приемник с 38кГц на 36кГц, ну нету поблизости на 38...?
    Не критично. Будет чуть не меньше чувствительность фотоприемника.

  20. #20
    Новичок Аватар для Keksdm
    Регистрация
    30.12.2011
    Сообщений
    27

    По умолчанию Re: Дешифратор команд ДУ NEC формата

    Если так мало памяти используется,
    почему не сделать дешифратор на Atmega8 ?

Страница 1 из 3 123 Последняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •