MirceaM Posted June 28, 2005 Share Posted June 28, 2005 Am nevoie sa contorizez timpul (in microsec) cat un semnal digital este in 1. Semnalul este in 1 un interval de timp care se situeaza in range-ul 1500 microsec - 5 sec. Pentru asta am folosit numai TMR0 pt care am facut aranjamentul sa faca overflow la 4096 microsec si am intrerupere doar la TMR0 overflow. Retindnd intr-o variabila de cate ori octetul de la adresa 0x01 s-a dat peste cap si considerand ca acest octet se incrementeaza cu 1 la fiecare 16 microsec (4096/256), in combinatie cu faptul ca semnalul intra pe PORTB.7 (intrerupere) - am rezolvat cazul. Sigur ca a trebuit sa ma multumesc, sa admit faptul ca timpul dorit nu poate avea orice valoare ci doar din 16 in 16 microsec.Dar intrebarea este despre modul "capture". As putea sa fac aceeasi treaba in mod mai simplu (mai eficient?) utilizand acest mod? Cum? Este vorba de 16F876 la 16 MHz. Multumesc. Link to comment Share on other sites More sharing options...
sifor Posted June 28, 2005 Share Posted June 28, 2005 Domnu' cercetator stintific principal ! Va rag sa cititzi cu toata increderea data sheet-ul lui PIC16F876 ! Acolo ve-ti gasii toate informatiile necesare !Don Mario Link to comment Share on other sites More sharing options...
MirceaM Posted June 28, 2005 Author Share Posted June 28, 2005 Domnu' cercetator stintific principal ! Va rag sa cititzi cu toata increderea data sheet-ul lui PIC16F876 ! Acolo ve-ti gasii toate informatiile necesare ! Don Mario L-am citit si il mai citesc. Pana una, alta, am intrebat si aici, pe forum. Acolo ve-ti gasii toate informatiile necesare !Ai dreptate.L-e vo-i gasii. Sau le v-oi gasiii! :wink: Link to comment Share on other sites More sharing options...
CristianC Posted June 29, 2005 Share Posted June 29, 2005 Modulul Capture poate fi setat sa salveze valoarea din TIMER1 la o tranzitie a semnalului de intrare. In plus poate sa genereze o intrerupere la fiecare tranzitie.Pentru aplicatia ta: La prima tranzitie resetezi TIMER1 iar la a doua citesti valoarea din bufferul de captura.Cu oscilator de 16MHz poti obtine o rezolutie de pana la 250ns. Link to comment Share on other sites More sharing options...
Pasare Dan Posted July 8, 2005 Share Posted July 8, 2005 tocmai la asta lucrez - trebuie sa citesc turatia unui motor si corectia turatiei (cea stabilita fata de cea reala) - si eu sper sa mearga - la mine frecventa e de la 0 la 200 Hz. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.