Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Misurare intervallo stato alto pin

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

0
voti

[1] Misurare intervallo stato alto pin

Messaggioda Foto UtenteDavide90 » 14 ago 2014, 10:06

Salve a tutti, sono alle prime armi con la programmazione dei PIC, in particolare sto usando un vecchio PIC16F84A(poi userò un 16F628) , ho la necessità di determinare per quanto tempo un pin rimane a livello alto, ho visto dal datasheet che il PIC ha un TMR0 , dovrei usare questa periferica? Avete qualche dritta?
Programmo in C con Mplab e compilatore xc18.

Grazue a tutti
Avatar utente
Foto UtenteDavide90
29 6
Frequentatore
Frequentatore
 
Messaggi: 130
Iscritto il: 5 lug 2012, 11:34

0
voti

[2] Re: Misurare intervallo stato alto pin

Messaggioda Foto Utentesimo85 » 14 ago 2014, 10:16

Davide90 ha scritto:ho la necessità di determinare per quanto tempo un pin rimane a livello alto


Spiega meglio cosa devi fare, perché un pin può rimanere a stato logico alto per tutta la vita del micro-controllore.
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[3] Re: Misurare intervallo stato alto pin

Messaggioda Foto UtenteDavide90 » 14 ago 2014, 10:21

devo poter intercettare il segnale proveniente da una ricevente da un' auto radiocomandata
Avatar utente
Foto UtenteDavide90
29 6
Frequentatore
Frequentatore
 
Messaggi: 130
Iscritto il: 5 lug 2012, 11:34

0
voti

[4] Re: Misurare intervallo stato alto pin

Messaggioda Foto Utentesimo85 » 14 ago 2014, 10:22

Usa un oscilloscopio.

Una soluzione spartana ad occhio nudo, un LED.
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[5] Re: Misurare intervallo stato alto pin

Messaggioda Foto UtenteDavide90 » 14 ago 2014, 10:25

forse mi sono spiegato male, ho bisogno di conoscere il tempo per cui un pin del PIC rimane alto,e quindi memorizzarlo in una variabile.
Avatar utente
Foto UtenteDavide90
29 6
Frequentatore
Frequentatore
 
Messaggi: 130
Iscritto il: 5 lug 2012, 11:34

0
voti

[6] Re: Misurare intervallo stato alto pin

Messaggioda Foto Utentesimo85 » 14 ago 2014, 10:29

Davide90 ha scritto:forse mi sono spiegato male


Decisamente. Se andiamo avanti cosi.. :-)

Davide90 ha scritto:ho bisogno di conoscere il tempo per cui un pin del PIC rimane alto,e quindi memorizzarlo in una variabile


Allora usa le interruzioni. Devi contare le interruzioni. Dipendendo dalla lunghezza del registro del timer, e dalle interruzioni, puoi successivamente conoscere la durata dell' impulso.

Sta a te decidere se vuoi salvare questo dato in memoria (volatile o non volatile) o vuoi inviarlo tramite bus seriale ad un computer.
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[7] Re: Misurare intervallo stato alto pin

Messaggioda Foto UtenteDavide90 » 14 ago 2014, 14:01

Intendi le interruzioni generate dal timer0? Non rieco proprio a capire come legare il timer0 alla durata del livello alto del pin. Da quello che sto leggendo, il timer0 genera un'interruzione quando il timer arriva a 0.
Vi è anche la possibilità di far generare un'interruzione quando uno specifico piedino si trova o al livello alto o basso. Devo seguire questa strada? Come ricavo poi l'intervallo di tempo tra un interruzione e l'altra?

Lo trovo un argomento un po' complicato, hai qualcosa da farmi leggere?
Avatar utente
Foto UtenteDavide90
29 6
Frequentatore
Frequentatore
 
Messaggi: 130
Iscritto il: 5 lug 2012, 11:34

0
voti

[8] Re: Misurare intervallo stato alto pin

Messaggioda Foto UtenteEcoTan » 14 ago 2014, 14:17

Premetto che non conosco il pic16, comunque misurare la durata di un impulso digitale è uno dei problemi più comuni e molti microcontrollori sono dotati di ingressi appositi che si chiamano Input Capture.
Avatar utente
Foto UtenteEcoTan
7.720 4 12 13
Expert EY
Expert EY
 
Messaggi: 5420
Iscritto il: 29 gen 2014, 8:54

0
voti

[9] Re: Misurare intervallo stato alto pin

Messaggioda Foto UtenteWALTERmwp » 14 ago 2014, 15:13

Per questo ...
Davide90 ha scritto:Lo trovo un argomento un po' complicato, hai qualcosa da farmi leggere?
... c'è il datasheet del microcontrollore in causa ( ... è in inglese).
Non so se Foto UtenteEcoTan è riuscito ad interpretare ciò che tu hai scritto, ovvero la tua necessità, però, non sei stato "molto chiaro".
Mi permetto di darti un semplice suggerimento: prova a spiegare con ordine e semplicità l'oggetto con il quale hai a che fare e quello che vorresti stabilire.

Saluti
W - U.H.F.
Avatar utente
Foto UtenteWALTERmwp
30,2k 4 8 13
G.Master EY
G.Master EY
 
Messaggi: 8982
Iscritto il: 17 lug 2010, 18:42
Località: le 4 del mattino

0
voti

[10] Re: Misurare intervallo stato alto pin

Messaggioda Foto UtenteDavide90 » 14 ago 2014, 15:30

Allora, devo collegare ad un piedino del PIC un segnale che esce da una ricevente di un' automobilina radiocomandata.
Mi serve conoscere per quanti millisecondi questo piedino rimane alto.
Avatar utente
Foto UtenteDavide90
29 6
Frequentatore
Frequentatore
 
Messaggi: 130
Iscritto il: 5 lug 2012, 11:34

Prossimo

Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 7 ospiti