Firmware - Gennaio 2015 / N°108 - (Page 17)

SKILLS esempio i campionamenti dei sensori capacitivi e le conversioni ADC. In modalità inattiva l'obbiettivo principale è preservare la batteria. Sicuramente andrà implementato un algoritmo lowpower di risveglio al tocco, per determinare quando è necessario passare in modalità attiva. Per esempio si può decidere di campionare solo uno switch alla frequenza di 1-10Hz per verificare se un dito è stato appoggiato sulla piazzola capacitiva. Si può utilizzare un low power RTC per pianificare questi controlli. Il consumo di corrente in fase inattiva dovrà essere compreso tra 1 e 3 µA. PROGETTAZIONE DELL'HARDWARE I passi fondamentali per la progettazione dell'hardware sono: -  eterminare il numero di aree capacitiD ve necessarie al sistema. -  elezionare una MCU low power con S funzionalità di rilevamento capacitivo. -  rogettare il PCB P Il numero di zone capacitive dipende dalla complessità dell'interfaccia utente, ogni pulsante capacitivo necessità di un solo ingresso touch, mantre slider e control wheel sono solitamente realizzati con un numero di ingressi variabile da 4 a 8. Una volta decisi il numero di ingressi si procede alla scelta della MCU. L'MCU dovrà avere una modalità di sleep estremamente efficiente e supportare dei risvegli periodici (per esempio potrebbe avere un real time clock). Una famiglia di CPU molto indicata per queste applicazioni è la C8051F99x di Silicon Labs [1]. Le caratteristiche di questa famiglia "F99x" sono: -  lash integrata (8 KB), RAM integrata (512 F byte) e una CPU che garantisce 25MIPS con 150µA/MHz di consumo in fase attiva. -  cquisizione autonoma di ingressi capaA citivi, con tempo di conversione inferiore a 40µs. -  na modalità di sleep che porta il conU sumo a 300nA con LFO interno e tempi di risveglio di 2µs. -  n ADC integrato da 10bit e 300Ksps U oppure da 12 bit a 75ksps. -  3/14 ingressi capacitivi in un conteni1 tore ridotto. La scelta del dispositivo giusto può essere fatta anche valutando le architetture di MCU che portano ulteriori vantaggi, per esempio la possibilità di campionare più canali in una singola conversione. Per esempio la famiglia F99x permette di collegare internamente più ingressi capacitivi e analizzarli in una singola conversione. Questo può far risparmiare energia e tornare utile per la funzionalità di risveglio collegando insieme più sensori capacitivi. Ovviamente questa funzionalità deve essere abbinata ad un layout dove tutte le aree capacitive abbiano la stessa dimensione e forma per evitare sbilanciamenti nella misura. La periferica si sensing capacitivo interna alla MCU F99x (denominata CS0) ha un oscillatore dedicato che controlla i tempi di conversione, indipendente dal clock di sistema. Questo permette di poter mette la MCU in una modalità di sospensione quando la conversione è in corso. In più la funzionalità di risveglio della CPU dalla modalità di sospensione al termine della conversione è già integrata. Se l'applicazione viene inserita in un ambiente soggetto a disturbi sarà necessario eseguire più conversioni per essere sicuri di avere una certa risoluzione sull'individuazione del tocco. La CS0 è in grado di eseguire una media delle conversioni basata su 1,4, 8, 16 ,32 o 64 campioni, senza intervento della CPU. REALIZZARE IL PCB La parte finale è quella che prevede la realizzazione del PCB. Un ottimo spunto lo possono fornire le schede di valutazione che solitamente sono disponibili per le MCU con funzionalità di sensing capacitivo. Rimanendo sulla famiglia F99x, possiamo considerare la F990 Slider Evaluation Board, in figura 2. La sorgente di potenza è una batteria CR2032 accompagnata da una capacità di disaccoppiamento da 1µF. La capacità risulta necessaria perché la batteria ha un elevata impedenza in uscita e la sua corrente di picco è limitata. La capacità aiuta a risparmiare batteria e ad integrare le richieste di corrente impulsive. La MCU installata è la C8051F990, in un contenitore da 3x3 mm, con 16 pin di I/O. All'esterno gli unici componenti richiesti sono un pull-up per la linea di reset e una capacità per il pin di Vdd. La scheda è equipaggiata con 10 LED e con 10 resistenze di limitazione per la corrente. La parte più interessante della scheda sono le 6 zone capacitive utili a generare un interfaccia utente. Le zone sono realizzate con pattern a "v" in maniera da poter essere usate singolarmente come pulsanti o combinate come cursori. La parte superiore delle piazzole è rivestita in maniera da proteggerle dalle ESD e ottenere una superfice uniforme al tocco. La MCU della scheda dispone di 13 pin in grado di effettuare il sensing capacitivo, per il collegamento alle pad l'ideale sarebbe realizzare le piste di collegamento sul lato inferiore di una scheda a 2 facce oppure su un lato interno di una scheda multistrato. Un'interessante nota tecnica applicativa per comprendere come realizzare il PCB è la AN447: Printed Circuit Design Notes for Capacitive Sensing with the CS0 Module[2]. 1. C8051F99x Datasheet: https://www.silabs.com/Support%20Documents/TechnicalDocs/C8051F99x.pdf 2. l'AN447: Printed Circuit Design Notes for Capacitive Sensing with the CS0 Module https://www.silabs.com/Support%20Documents/TechnicalDocs/C8051F99x.pdf https://www.silabs.com/Support%20Documents/TechnicalDocs/C8051F99x.pdf http://www.ie-cloud.it/web/contatti/

Tabella dei contenuti per la edizione digitale del Firmware - Gennaio 2015 / N°108

SOMMARIO
Tips’n Tricks Energy Harvesting
FOCUS La Rivoluzione Biomedicale “Bottom-Up”
Skills Low Power Capacitive Sensing
INside
USB 3.0: SuperSpeed con il “-25%” dei Consumi!
Com’è Fatta una Penna USB?
ANALOG Gestire la Luce Ambiente con TI OPT3001
SPOTlight Migliori Prestazioni dai Ricevitori “Very Wide Band” a Conversione Diretta
Tools Le “function priority” di Portos
News
EVENTS
Guida

Firmware - Gennaio 2015 / N°108

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