Страница 1 из 1
RC-5: обработка команд пульта ДУ - исходники
Добавлено: Чт ноя 02, 2006 11:34:41
Aheir
Здравствуйте, уважаемые...
Ни у кого никогда не возникало желания рулить своими конструкциями, используя пульт ДУ от телека или еще от чего?
А у меня вот возникло.
Посему возникает вопрос, нет ли у кого толковой реализации протокола RC-5 на С под AVR?
В И-нете кое-что встречается, но либо не работает, либо криво...
Просто не хочется велосипед изобретать...
Заранее спасибо...

Добавлено: Пт ноя 03, 2006 10:05:04
Aheir
Придется, видно, самому писать, как с температурным датчиком, быстрее будет...

Добавлено: Пт ноя 03, 2006 12:39:37
Spider
Дык всё просто. Сам протокол РЦ-5 известен. Из железа вешаешь TSOP на прерывание и фиксируешь временные интервалы между прерываниями. Врменные интервалы можно фиксировать взведённым рядом таймером и съёмом его значения с последующим обнулением.
Если жалко прерывание можешь опрашивать порт, но это ИМХО большая нагрузка на проц и "тормознутость" основной работы проца, всё равно что печатать яркую большую фотографию через LPT printer, когда есть возможность переткнуть его в USB. Всё остальное дело техники.
Если будут проблемы - пиши.
Кстати РЦ-5 это же самосинхронизирующийся сигнал? Помоему всё тоже что и на RFID устройствах, токак пакет другой. Работа с 125kHz RFID устройствоим у меня есть, с учётом шифрования кода Манчестером.
Добавлено: Вс ноя 05, 2006 16:00:54
Aheir
Насколько я понял, именно так это все обычно и реализуется, уже читал, все равно спасибо...
Но, сам понимаешь, лень - двигатель прогресса...
думаю, поищу еще чего готовое, да и напишу сам в итоге.
Добавлено: Вс дек 14, 2008 15:44:20
Krik99
Не поделитесь исходникм приемника RC5 на Тини2313 желательно под Code Vision AVR. Частота МК желательно 4мгц или 8мгц. Искал, и нечего толкового не нашол.

Добавлено: Вс дек 14, 2008 18:54:47
AndreiVV
под codevision, 8Mhz
Добавлено: Вс дек 14, 2008 19:58:25
Krik99
to AndreiVV
Это же вроде не под Тини2313.
Добавлено: Вс дек 14, 2008 20:26:09
AndreiVV
Krik99 писал(а):to AndreiVV
Это же вроде не под Тини2313.
Этот код под серию классик, а я использовал этот код на серию мега.
Что мешает вам использовать функцию обработки приема? Вам надо просто настроить таймер, прерывание и изменить название регистров и у вас будет под тини.
Добавлено: Вс дек 14, 2008 20:34:02
Krik99
Дык мне надо рабочий код, чтобы там нечего не править. Либо покажите пример что именно мне надо поправить.
Добавлено: Вс дек 14, 2008 21:38:21
Aheir
Ну ты уж сразу, как мед, так ложкой... Есть исходники в статье
"Некоторые протоколы ИК-пультов", элементарно портируются на любой МК.
Добавлено: Вс дек 14, 2008 21:58:37
Krik99
Какраз на основе этого исходника и написал тестовую программу для Мега8515. Там всё норм. А вот этот же исходник под Тини2313 неудаётся, первая проблема это настройка таймера, так как у Мега16 и Мега8515 настройки таймера совпадают, а у Тини 2313 регистры отличаются.
К примеру тотже TCCR0 = 0x04; у Тини2313 вместо него если я нечего не путаю TCCR0A=0x00; TCCR0B=0x00; тогда это будет так что-ли
? Я на правельном пути? И что можно упростить в исходнике, так как вроде ругается на Data Stack Size.
Добавлено: Вс дек 14, 2008 23:03:09
art617
Вот немного исходников по RC5 посмотрите ,может подойдёт;)