Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

алгоритъм за sony IR
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=2274
Страница 1 от 2

Автор:  syrax [ Пет Апр 28, 2006 10:09 am ]
Заглавие:  алгоритъм за sony IR

някой може ли да постне С алгоритъм за декодиране на деистанционно за SONY, ползвам at89s52

БЛАГОДАРЯ предварително :)

Автор:  setoy [ Пет Апр 28, 2006 11:53 am ]
Заглавие: 

Ех, може би ти знаеш какво точно имаш предвид, но едва ли на някой друг става ясно :D

Искаш да накараш 8952 да разпознава някои команди от протокола на дистанционното ли, какво ли? Ако да - не е трудно.

Автор:  syrax [ Пет Апр 28, 2006 11:59 am ]
Заглавие: 

да искам да разчитам команди от дистанционното , и след това ще си напиша програмата да ми реагира на командите, но самото четене на сигналите ми е проблем , правих опити но не се получи

мерси предварително

Автор:  setoy [ Пет Апр 28, 2006 12:32 pm ]
Заглавие: 

Правил съм го, само че с PIC. И то на асемблер. Не знам дали може да ти е от полза. Но така или иначе принципа е ясен.

Автор:  syrax [ Пет Апр 28, 2006 12:34 pm ]
Заглавие: 

аз за асм имам кодове ама не мога да схвана принципа за това ми трябва за С

Автор:  setoy [ Пет Апр 28, 2006 3:13 pm ]
Заглавие: 

В общия случай всичко се свежда до измерване на време. Информацията се кодира с различни по дължина импулси - да ре4ем 10 мс импулс = 0 , 20 мс = 1. Конкретните детайли зависят от конкретния протокол, който ползва д-то. Да кажеш че няма откъде да се прочете - има.

Автор:  Predator_MF [ Пет Апр 28, 2006 3:25 pm ]
Заглавие: 

Начините са много, досега съм използвал два начина, единия работи във всякакъв контролер, другия изисква Capture-Compare модул. И двата начина са универсални за какви да е IR дистанционни...

Първия начин е да сканираш състоянието на входа през някакъв константен интервал от време и да записваш тази информация в достатъчно голям буфер - с 30 bytes съм ползвал в PIC16F84. После с малко обработка на единиците и нулите които си получил в буфера обработваш докато получиш T/2T изражението на кода, получават се 2 байта при мене, които всъщност са самия код на бутона от дистанционното.

Втория метод който съм ползвал е за предпочитане пред първия, ползвам CCP модул на PIC процесор (примерно), при всеки положителен фронт от IR приемника пускам CCP модула, при следващия положителен спирам, получения интервал го записвам в буфер...и така докато се напълни буфера. Предимството е че ползваш хардуер за целта и можеш да организираш работата в прекъсване, докато в главния код извършваш някаква друга работа, не се налага да чакаш за сигнал за разлика от първия метод. Накрая пак обръщаш времената в Т/2Т и получаваш кода на бутона.

Погледни това: http://www.techdesign.be/projects/011/011.htm

Автор:  syrax [ Пет Апр 28, 2006 3:33 pm ]
Заглавие: 

аз бях си написал кода ама не работи коректно, моя начин беше като след като имам външен интеръп от 1 към 0 почва да работи и вземам проби през определено време само че сонито не е като RC5 и ако след пулса ми е 2т/1/ променям тимера за проба и така до края вземам си само първите 7 бита защото другите не ме интересуват......... но през 2-3 пъти ми отчита друга инф. и така :)) може някой ден да стане ще пробвам по твоя начин дано да стане. ако някой друг има идея да поства :)))) ще сам благодарен пък от цялата работа може да излезе нещо

ОБЕЩАВАМ ЧЕ КАТО СТАНЕ ЩЕ ПОСТНА ЦЕЛИЯ СОРС

/free software for everyone/

Автор:  evc [ Пет Апр 28, 2006 3:44 pm ]
Заглавие: 

На един PHILIPS ЦД плеер съм правил такъв номер, но вкарах сигнала директно в UART модула. И до сега си работи. Всичко си става автоматично, няма нужда да смяташ времена - получаваш директно цифров код. Само трябва правилно да се подбере битрейта.

Автор:  syrax [ Пет Апр 28, 2006 3:49 pm ]
Заглавие: 

аз не сам запознат с тези декодиращите интеграли , гледах някаде в нета за такива ама не знам какви има тук на пазара но ме изгаря амбицията да го напрява програмно

Автор:  syrax [ Пет Апр 28, 2006 3:52 pm ]
Заглавие: 

и другото което ме притеснява е че незнам дали с тсоп 1138 ще стане номера при положение че сони с 40Khz имам и едно TFM5560 ама не знам за каква честота е.

Автор:  evc [ Пет Апр 28, 2006 3:52 pm ]
Заглавие: 

UART модула на процесора! В 89С52 има. В твоя предполагам също.

Автор:  syrax [ Пет Апр 28, 2006 3:55 pm ]
Заглавие: 

можеш ли да ми дадеш пример аз ползвам 89s52 има доп. таймер за разлика от 89c51 и малко повече памет иначе софта става и за 2-та ако е писан за 89с51.

Автор:  evc [ Пет Апр 28, 2006 4:04 pm ]
Заглавие: 

Значи прочети внимателно в дейташийта как се конфигурира UART модула. Настройваш си битрейта (няма да се размине без проби - донастройки). Като се напълни буфера, получаваш прекъсване. Прочиташ си получения байт и правиш с него каквото е необходимо. Единствения препъни камък може да се окаже, ако дистанционното излъчва думи от по повече от 8 бита. Няма нищо уникално в кода нито някакви софтуерни хватки. Мога да ти го постна, но чак във вторник, понеже ми е в архива у дома.

Автор:  syrax [ Пет Апр 28, 2006 4:11 pm ]
Заглавие: 

оки мерси ще сам ти благодарен ако го постнеш :)

Страница 1 от 2 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/