kaporalu Postat Mai 31, 2011 Partajează Postat Mai 31, 2011 Sunt nou-venit in lumea PIC-urilor si nu ma descurc cu timerele si intreruperile lor. Ma puteti ajuta cu un program pentru a decoda semnalul de la o telecomanda NEC? Ce as vrea eu sa fie: un 12F629, pe INTOSC, calibrat pentru cei 4MHz, sa primeasca semnalul IR de la un receiver cu logica inversata (iesirea LOW cand primeste IR), sa decodeze semnalul si sa trimita mai departe (I2C sau SPI) adresa si comanda receptionate, eventual addr.255 si codul 255 pentru "repeat last button". Mai departe, un alt PIC primind adresa si codul de la telecomanda, decide ce anume trebuie facut (on/off, volume +/-, etc). Telecomenzile NEC sunt foarte raspandite printre chinezarii (vezi MP3 playere FM auto si alte jucarele). Am gasit ceva de vanzare pe net, dar iesirea e seriala: http://www.sunrom.com/remote-control-in ... serial-out Ar putea fi o tema publica pentru toti cei care ar vrea sa folosesca in proiectele lor telecomanda, eventual si pentru alte protocoale (SONY sau RC5). Din pacate, m-am "jucat" numai in MikroBasic, codul de asamblare e greoi de inteles. Iar cand vine vorba de temporizari si intreruperi, s-a terminat cu meseria. Multumesc pentru rabdare. Link spre comentariu
Liviu M Postat Mai 31, 2011 Partajează Postat Mai 31, 2011 Ai vreun motiv special ca sa folosesti 2 picuri in locul unuia ceva mai potent? Link spre comentariu
kaporalu Postat Mai 31, 2011 Autor Partajează Postat Mai 31, 2011 Ar fi elegant de folosit, dimensiuni reduse, ca un modul de interfata, putand fi aplicat in multe domenii. Eu il vreau pentru o linie audio, dar se poate utiliza si in automatizari casnice. Folosind acelasi soft, ar fi "gata de pus la treaba" sub un protocol larg utilizat (I2C/SPI), ca si RTC-urile, ADC, DAC, EEPROM, DDS-urile. Si inca unul gasit pe net, dar tot serial: http://www.sureelectronics.net/goods.php?id=1169 Link spre comentariu
pegas Postat Iunie 1, 2011 Partajează Postat Iunie 1, 2011 http://www.sbprojects.com/projects/ircontrol/index.php succes. p.s. eu lucrez la propriul soft pentru rc5 dar ... deocamdata e in faza alfa. ceea ce nu inteleg eu este de ce alt pic trebuie sa decida ce se face (vol+ vol- etc). Link spre comentariu
Vizitator calind79 Postat Iunie 9, 2011 Partajează Postat Iunie 9, 2011 atasez un cod C functional (pt. CCS compiler, foloseste functiile built-in) scris de mine, e si acum "in uz" ca telecomanda pentru un amplificator.in IR_ID1 si IR_ID2 este adresa complementara a telecomenzii. daca vrei sa fct. cu orice telecomanda scoti din cod bucata unde sint testate. codul tastei il ai in key_code, iar valid_key il resetezi tu din main dupa ce ai prelucrat tasta. Link spre comentariu
kaporalu Postat Iunie 10, 2011 Autor Partajează Postat Iunie 10, 2011 Multumesc din suflet, calind79. Nu sunt familiarizat cu C-ul, dar o sa incerc sa-ti "prind" ideea si s-o traduc in fapte. P.S. Salutari pentru toti iesenii (studentie.... ani frumosi...). Link spre comentariu
Vizitator calind79 Postat Iunie 12, 2011 Partajează Postat Iunie 12, 2011 tin sa mentionez ca acel cod functioneaza si e testat pe 16F876. am implementat si pe 12F629 (am pus o telecomanda la un CD player) dar e posibil sa trebuiasca foarte mici schimbari.C-ul iti rezolva multe probleme, cu toate ca am programat oleaca si-n asamblare la viata mea (Z80) efortul e incomparabil mai mic odata ce depasesti socul initial. eu am invatat Pascal in liceu si initial C-ul mi s-a parut dracu' in persoana, dar in timp... Link spre comentariu
INCEPATOR21 Postat Iunie 16, 2011 Partajează Postat Iunie 16, 2011 buna seara! Ma poate ajuta cineva sa mi faca un program pt 12f675 sau 12f629 sa mi dea pe iesire PWM? As dori sa fac asta din telecomanda ca binecunoscutul IR ON/OFF CU ACEST PIC http://www.ivica-novakovic.from.hr/IrOn ... m#IrOnOff2 . Diferenta este ca vreau sa il folosesc la marirea sau micsorarea volumului unei boxe sau la un bec. nu vreau dimmer doar sa modific din telecomanda pwm. Daca nu cer prea mult as dori sa aibe 2 iesiri pwm sa pot comanda 2 aparate separat. nu stiu sa programez picuri, cu atm8 mi a iesit dar am mai multe picuri si de aceea.va multumesc mult! Link spre comentariu
kaporalu Postat Iulie 10, 2011 Autor Partajează Postat Iulie 10, 2011 Pana la urma am reusit sa-l fac in MikroBasic.Deocamdata C-ul e la capitolul "va urma".Atasez fisierele MikroBasic (schimba extensia in *.mbas) si hex-ul (sterge .txt din nume). Link spre comentariu
kaporalu Postat Iulie 10, 2011 Autor Partajează Postat Iulie 10, 2011 re-trimit fisierele Link spre comentariu
XAN77 Postat Iulie 10, 2011 Partajează Postat Iulie 10, 2011 am facut si eu o data o rutina de decodare NEC (printre altele), aveam o telecomanda ce emitea coduri de 32 de biti in standard NEC. Programul este in ProtonIDE (Basic): Device = 16F871 Xtal = 20 All_Digital = TRUE Dim IRDATA As Dword Dim CONTOAR As Byte Dim TEMP As Word Dim N As Byte Symbol IR = PORTB.1 DelayMS 200 Cls Print At 1,1,"COD NEC = "READIR: IRDATA = 0MAIN: If IR = 0 Then GoTo IR_DECODE Else GoTo MAIN EndIfIRDECODE:LOOP1: If IR = 0 Then GoTo LOOP1 ;asteapta trecerea headeruluiLOOP2: If IR = 1 Then GoTo LOOP2 For N = 1 To 31 TEMP = PulsIn IR , 1 ;(asteapta un "1" si masoara durata) If TEMP > 500 Then Set IRDATA.31 IRDATA = IRDATA >> 1 Else Clear IRDATA.31 IRDATA = IRDATA >> 1 EndIf Next N Print At 2,1,Dec3 IRDATA.Byte3," ",Dec3 IRDATA.Byte2 DelayMS 300 GoTo READIR End Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum