Firmware - Marzo 2014 / N°98 - (Page 55)
insieme alla corretta gestione del bit configUSE_TICKLESS_IDLE. Per questa particolare implementazione si dovrebbe anche
considerare
la
funzione
vPortSuppressTicksAndSleep(): una funzione con un solo parametro che identifica il numero dei tick di sistema prima che
il task venga spostato in uno stato di READY,ossia in ready queue. Il codice per la
funzione non è per nulla banale poiché
sarà necessario ricalcolare lo sleep time,
la riconfigurazione del timer SysTick sempre in accordo a questo sleep time, gestire
la modalità di low power e dimensionare il
tempo di CPU speso dal task in questa
modalità e ricalcolare il tick da tenere come base dei tempi successivamente all'evento considerato. Tutti questi passi,
però per fortuna, sono stati già previsti
in FreeRTOS. Secondo le specifiche di
FreeRTOS rimane a carico dell'utente
l'abilitazione o meno di questa funzionalità
operativa ricorrendo alla definizione di
configUSE_TICKLESS_IDLE.
In effetti, grazie a questo kernel il processore entra in modalità low power in
modo automatico e trasparente qualora
non ci siano task applicativi in esecuzione
e dove il tempo minimo di blocco delle
attività dell'applicazione non fosse inferiore
a configEXPECTED_IDLE_TIME_BEFORE_SLEEP presente in Config.h. Occorre
però precisare che esiste potenzialmente
un rischio; infatti, tutto questo presuppone che il processore si trovi in una si-
tuazione di low power mode e non in Wait
Mode o Retention mode. In questo caso,
un wake-up potrebbe non bastare perché il timer di sistema potrebbe anche
non essere più risvegliato in situazioni
dove si presenta una modalità di low power più spinta. Altra cosa se ricorressimo
all'AST; in questo caso, il processore entrerebbe in low power mode utilizzando la
configurazione di AST e rimanere in questo stato per un tempo indeterminato fino
a quando non scade il contatore AST.
Precisiamo però che se il calendar mode
fosse utilizzato nell'applicazione, allora
la funzionalità di tickless non può essere
presa in considerazione fino a quando si
utilizza il counter mode in AST. Si ricorda
che SAM4L può vantare un solo modulo
AST che non potrà funzionare in modalità calendar e counter nello stesso tempo.
CONCLUSIONE
In quest'articolo abbiamo esaminato alcuni aspetti che possiamo tenere presenti per sfruttare al massimo la nuova
famiglia di casa Atmel, ma per ricavare il
necessario al fine di definire le nostre
nuove piattaforme di lavoro è necessario
conoscere in modo più completo sia il sistema operativo (o kernel) che stiamo
utilizzando, sia il processore, perché
questi due mondi non possono essere
considerati in modo disgiunto.
FOCUS ON
INSIDE
TOOLS
ANALOG
TIPS'N TRICKS
55
SKILLS
MARKET NEWS
SPOTLIGHT
EVENTS ZAPPING
MEMBERSHIP
Tabella dei contenuti per la edizione digitale del Firmware - Marzo 2014 / N°98
News
TIPS'n tricks
FOCUS on I Microcontrollori Kinetis K60
SKILLs Note di Progetto con PIC24FJ128GC010
INside
Usare un NAND come Traslatore
Le MCU C8051F91x-C8051F90x
Single-Chip Usb To Uart Bridge
ANALOG
Rilevamento interruzioni con Atmel ATA6870
Una Proposta TI per i Convertitori DC-DC
TOOLS FreeRTOS e SAM4L, le ragioni di una perfetta integrazione
SPOTlight Il DPSM: analisi di previsione e risparmio energetico
EVENTS zapping
Guida
Firmware - Marzo 2014 / N°98
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2015-02_109
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2015-01_108
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-12_107
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-11_106
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-10_105
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-09_104
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-07_102
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-06_101
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-05_100
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-04_99
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-03_98
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-02_97
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-01_96
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-12_95
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-11_94
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-10_93
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-09_92
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-07_90_91
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-06_89
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-05_88
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-04_87
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-03_86
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-02_85
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-01_84
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-12_83
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-11_82
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-10_81
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-09_80
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-07_78-79
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-06_77
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-05_76
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-04_75
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-03_74
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-02_73
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-01_72
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-12_71
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-11_70
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-10_69
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-09_68
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-07_66_67
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-06_65
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-05_64
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-04_63
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-02_62
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2011-02_61
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2011-01_60
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-12_59
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-11_58
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-10_57
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-09_56
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2010-07_54-55
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2010-06_53
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Maggio-2010-52
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Aprile-2010-51
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Marzo-2010-50
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Febbraio-2010-49
https://www.nxtbookmedia.com