sincronizzare tempo e istruzioni !!

Scusate ragazzi non sono molto esperto di programmazione e vorrei alcuni consigli da voi su come risolvere questo problema. Devo acquisire con un micro 18f452 due segnali, Tensione e Corrente, precisamente 10 campioni di ognuno al secondo, memorizzarli, effettuarne la media ogni 5 secondi, memorizzarla, e infine nuovamente la media delle medie ogni 25 secondi..come posso sincronizzare il tutto? Ho pensato all'interrupt da timer, o introducendo dei ritardi software.. in ongi caso vorrei sapere se c'è una qualche soluzione brillante per risolvere il tutto che a me, neofita, sfugge. Un'altra cosa... considerando i tempi di acquisizione dell'ordine delle decine di micro, posso trascurare il tempo di cambio canale sul convertitore? Aspetto vostri consigli con ansia...ciao e grazie!

Reply to
Alessandro Brasili
Loading thread data ...

Usi uno dei timer a disposizione per contare il tempo che scorre mentre la cpu fa altro. Quando il timer va in overflow scatta un int che tu devi agganciare. All'interno della isr campioni la tensione e la corrente e conti i campioni che fai. Poi ogni 5/25 fai la media

Se vuoi minimizzare il ritardo per il cambio di canale (e complicarti un po' la vita) potresti usare due timer per i due campionamenti. L'importante e che i due timer scattino sfalsati. Nel tempo in cui nessuno delle due isr è attiva ne approfitti per cambiare canale di acquisizione!

Almeno, io farei così...

Ciao!

Reply to
ice

Ciao Ice, ammettiamo che non voglia complicarmi la vita, tu pensi che impostando il timer per un overeflow ogni 100 ms e campionando all'interno dell'ISR , quindi switchando i canali e acquisendo tensione e corrente, grossomodo dovrei prendere 10 campioni ognuno? dopotutto il Tacq è circa

15us se a questo tempo aggiungo qualche altra istruzione da 1us ciascuna, per ogni ciclo dovrei portarmi un errore di una cinquantina di us, direi trascurabile giusto? Una domanda forse stupida...quando aggancio l'interrupt da timer, il timer continua a scorrere? ..grazie mille

"ice" ha scritto nel messaggio news:6Ck2d.263293$ snipped-for-privacy@news3.tin.it...

Reply to
Alessandro Brasili

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.