# PIC mikrokontrolleri >  IR remote control with PIC

## sharps

Vai kaads kaadreiz ir konstrueejis liidziigas ieriices. Interesee ar kaadaam probleemaam naakas saskarties dekodeejot IR seriaalos datus?

----------


## Velko

Tieši uz PIC neesmu taisījis, taisīju uz AVR  :: 

Problēmas? Nekādas dižās. Drusku pačakarējos ar dekodēšanas algoritmu. Tad vēl pareizi nokalibrēt laika intervālus.

----------


## sharps

varbuut kaadu labu ideju pasviediisi?

----------


## sharps

man principaa programma balstaas uz paartraukumu principa. saakumaa tiek izsaukts paartraukums peec signaala krituma uz kaajas. tad tiek iesleegts paatraukums no taimera overflow. tam jaanoskaita savas mikrosekundes liidz paarpildaas un atkal tiek izsaukts paatraukums.

----------


## Velko

Nu man interrupts nostrādā gan uz signāla krituma, gan kāpuma (pin change). Tiek mērīts laika intervāls kopš iepriekšējā šī interrrupta izsaukuma. Balstoties uz pina tekošās vērtības nosaka, vai signāls pirms tam bija zems vai augsts. Tātad noskaidrojam, vai bija PULSE vai SPACE, un cik garš.

No šī konstatējam, vai tas ir komandas sākums vai saņemtais bits. Ja komandas sākums, tad resetojam bitu counteri uz komandas garumu. Ja bits, tad "iešiftojam" tā vērtību un samazinam bitu countera vērtību.

Ja tagad bitu counteris = 0, tad skatamies kas tā par komandu un izpildam.

----------


## sharps

Jautaajums par sho pashu teemu.
Par diviem pirmajiem start bit ir skaidrs. Zinu ka atkaartoti nospiezhot pults pogu TG bits maina savu veertiibu. Kas notiek ar TG bit, tad kad piespiezhot pogu uz pults (turot to) vai tas ar katru naakamo paku maina savu veertiibu?

----------

