Se la massima risoluzione temporale è di 100 ms, perché elucubrare sui 10 o addirittura sui 2 ?
Se non ho interpretato erroneamente, basterebbe un interrupt(irq) su base, appunto, di 100 ms.
Nel codice richiamato dallo irq si esegue il set di una variabile con contesuale riattivazione del timer(quello che scatena lo irq stesso), e basta.
Nel loop si controlla la variabile trattata con l'evento irq e in funzione dell'esito si compie l'azione associata, oltre ad incrementarne una utile al conteggio dei 500 ms.
Se le operazioni(compresa la lettura di un sensore) venissero eseguite in meno di 100 ms credo non ci si dovrebbe preoccupare dell'atomizzazione.
E tutto quello eseguito nel loop deve e può avvenire mentre il timer da 100 ms(cioè la tua base dei tempi) è già ripartito, riarmato automaticamente o col codice richiamato dallo irq.
Nel main si può puoi, appunto, anche pensare di commutare in sleep-mode, se i tempi di elaborazione lo consentono(se ne vale la candela ...), tanto è compito dello irq risvegliare il micro.
In questo modo, a mio parere, si dovrebbero anche contrarre quelle dilatazioni indicate in [19].
Saluti
Schedulatore
Moderatore:
Paolino
24 messaggi
• Pagina 3 di 3 • 1, 2, 3
0
voti
[22] Re: Schedulatore
Ciao, grazie a tutti per le risposte.
No no ma quello difatti non è un problema mi chiedevo solo come mai non ottengo un tempo preciso, tutto qua, poi tanto quello devo eseguire è sotto i 100ms ma si deve ripetere ogni 100ms.
In compenso non facendo firmware per lavoro mi chiedevo se esistesse un libro sul C orientato alla programmazione sui microcontrollori visto che nonostante sia riuscito a fare quello che mi serviva, noto molte lacune sulle tecniche di programmazione tipo scheduling atomizzazione ecc. Voi avete un libro che conoscete e che mi sapete consigliare su questi argomenti?
No no ma quello difatti non è un problema mi chiedevo solo come mai non ottengo un tempo preciso, tutto qua, poi tanto quello devo eseguire è sotto i 100ms ma si deve ripetere ogni 100ms.
In compenso non facendo firmware per lavoro mi chiedevo se esistesse un libro sul C orientato alla programmazione sui microcontrollori visto che nonostante sia riuscito a fare quello che mi serviva, noto molte lacune sulle tecniche di programmazione tipo scheduling atomizzazione ecc. Voi avete un libro che conoscete e che mi sapete consigliare su questi argomenti?
0
voti
[23] Re: Schedulatore
TheMask ha scritto:In compenso non facendo firmware per lavoro mi chiedevo se esistesse un libro sul C ...
Il libro che consiglio è Kernighan & Ritchie per il C, è più che sufficiente, per il resto basta leggere il datasheet (bene), le note sulla programmazione rilasciate dal produttore, studiasi come funziona il compilatore (io uso elusivamente il GCC e Clang) e studiare tanti sorgenti disponibili in rete ad esempio quelli dei vari RTOS open source.
24 messaggi
• Pagina 3 di 3 • 1, 2, 3
Torna a Firmware e programmazione
Chi c’è in linea
Visitano il forum: Nessuno e 13 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)




