Visualizza messaggio singolo
Vecchio 19 novembre 10, 19:48   #77 (permalink)  Top
MSchiepp
User
 
L'avatar di MSchiepp
 
Data registr.: 21-01-2004
Residenza: Milano
Messaggi: 989
Prima di use l'interrupt, fallo funzionare testando il bit; devi modificare anche il settaggio del timer: tu hai impostato il conteggio del numero di impulsi che arrivano su RB0, non il conteggio del tempo dell'impulso.

prova così:

Setta il timer con ingresso sul clock interno (T0CS=0)
Setta RB0 (o altro pin) in ingresso

do{
TMR0 = 0;
}while (!RB0); // aspetta che RB0 sia a 1 e tiene TMR0 a 0

while (RB0); // aspetta che RB0 sia a 0 mentre TMR0 conta
a = TMR0; // salva il valore raggiunto dal timer

Ovviamente non è il sistema più preciso, ma è il più facile; un passo alla volta...


Michele
__________________
__________________________________________________
The worst day flying is better than the best day working.
MSchiepp non è collegato   Rispondi citando