Страница 1 из 3

автомагнитола KENWOOD управление по протоколу NEC на tiny13A

Добавлено: Сб апр 25, 2015 14:44:19
Mishany
столкнулся с проблемой управления магнитолой штатными кнопками на руле (мучился 5 лет, магнитола в бардачке)
искал готовые решения - нашел только на asm, а asm я не знаю, и таки решил сделать с 0 сам на СИ,
С моих кнопок идет 2 канала по 3 кнопки с напряжением 0В, 1,7В, 3,3В, получилось все уместить в тини13А
исходник под 5-ую студию прилагаю.
пользуйтесь на здоровье!

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Сб май 02, 2015 16:36:15
Mishany
немного переработан опрос АЦП, скрин fuse в проекте.

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Вс май 31, 2015 15:17:18
Mishany
глобально переработана программа, добавлена новая функции листание папок долгим удержанием Seek+/Seek-
еще и место осталось в МК))) исходник на 6.2 AtmelStudio.
схема, печатка, fuse все внутри

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Вс ноя 08, 2015 13:11:14
dmitriy.p
Приветствую!
Полезный для многих проект ты выложил! Но к сожалению, я только начинаю программировать (и под Arduino в частности). Программирую в среде Arduino IDE, соответственно упрощенный синтаксис чем в голос СИ, по этой причине я не смог разобрать твои исходники. Мне необходимо тоже подключить с управлению с руля магнитолу Kenwood через проводное соединение по протоколу NEC. Вроде основной код написал, но не уверен в правильности посылаемого HEX кода магнитолы. Сможешь помочь?

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Вс ноя 08, 2015 15:23:18
Mishany
http://radiokot.ru/forum/viewtopic.php? ... 0&start=40там в конце страницы пример отправки две функции.
ардуно это зло, пока не поздно надо соскакивать.

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Чт ноя 12, 2015 18:53:32
bratec_bober
Сорян, что вмешиваюсь) Ардуино не такое уж зло (если использовать в качестве прототипа, как конечное устройство, конечно не очень удобно, скажем "нанотехнологии для домохозяек", но пока и сам такой)
А по вопросу, в общем код в листинге Mishany правильный, только для управления ИК диодом, а для управления по проводному протоколу - поменяй местами в коде ВЕЗДЕ низкий и высокий уровни. Т.е. длинная пауза = длинный высокий уровень и т.д. По факту получается так. Магнитола KMM-120Y. Видимо дело в том, что провод ждет сигналы от ИК приемника, а не от передатчика. В моем ардуино-листинге по сути то же самое, только в ином (несколько дилетантском) виде. 1-импульс 0-отсутсвие импульса. Есл сравнить это все с NEC протоколом и посмотреть, какие получатся паузы - все станет на свои места.

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Чт ноя 12, 2015 21:22:32
Mishany
так вроде и у меня и у него проводное соединение, зачем диод?

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 15:29:21
pcb
Mishany писал(а):Mishany
Молодец :)

В 3ей версии появились отступы )

еще можно улучшить читабельность.

Код: Выделить всё

if (but<4)						//если длинное нажатие
			{
заменить на так

Код: Выделить всё

if (but<4)	{					//если длинное нажатие	

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 15:32:35
Mishany
и ведь не лень было код поковырять :)))

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 15:46:44
pcb
чо тут ковырять то, две страницы. :write:

Код: Выделить всё

ISR(ADC_vect)
{
	n++;
	if ([b](n>20)[/b]&&((ADMUX&(1<<0))==0))										//пропуск 20 замеров если ADC3
	{
		cha_1=ADCH;
		ADMUX|=(1<<0);
	}
	if ([b](n>40)[/b]&&((ADMUX&(1<<0))!=0))
	{
		cha_2=ADCH;
		ADMUX&=~(1<<0);
		n=0;
		adc_off;
	}
}
при n=21 могут выполнится оба блока. исправляй. :kill:

Код: Выделить всё

if ((n>40)&&((ADMUX&(1<<0))!=0))
тут ваще шаманство какое то ))

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 15:48:00
Mishany
в коде не работает жирный шрифт)))) там есть еще одно условие которое не позволит выполниться обоим условия

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 15:52:37
pcb
зато мозги работают с глазками.

оно работает? или не проверенно ещё в железе?

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 15:53:42
Mishany
катаюсь дольше чем существует эта тема.

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 16:08:10
pcb
ну ок.

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 16:17:24
Mishany
проверка бита статуса &&(1<<bit)? разве? хотя оно может тоже будет работать, но у меня всегда работало &(1<<bit)

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 16:41:32
pcb
Mishany писал(а):но у меня всегда работало
повезло, т.к. у авров некоторые биты регистров реад онли.

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 16:48:38
Mishany
не встречал такой записи ни разу

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 16:57:06
pcb
я угорел по ходу дела :kill:
Mishany писал(а):не встречал такой записи ни разу
у тебя все хорошо, в этом случае.

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 17:00:42
Mishany
не понял смысла последнего сообщения :dont_know:

Re: автомагнитола KENWOOD управление по протоколу NEC на tin

Добавлено: Пт ноя 13, 2015 17:28:57
pcb
Mishany писал(а):не понял смысла последнего сообщения
запись правильная у тебя:
Mishany писал(а):(ADMUX&(1<<0)
Я перегрелся :)