XPLAIN: alla scoperta dei micro XMEGA

Un kit di sviluppo a basso costo per valutare prestazioni e caratteristiche dei micro AVR Xmega presentato negli anni passati.

XMEGA A1 è la famiglia di microcontrollori a bassa dissipazione di potenza recentemente introdotta da Atmel. Realizzati nella tecnologia nonvolatile ad alta densità messa a punto da Atmel, i dispositivi sono basati sulla nota architettura AVR con CPU RISC a 8/16 bit, struttura Harvard ed un insieme completo di periferiche standard. Assicurano così elevata capacità di calcolo (fino a 1MHZ/Mips) ma ridotto assorbimento di corrente (20 mA ad una frequenza di clock di 30 MHz e con alimentazione di 3.3V), supportando diverse modalità di power save configurabili mediante software. La CPU implementa un insieme completo di istruzioni, uno spazio di indirizzamento lineare diviso in SRAM e registri di I/O, un insieme di 32 registri generici connessi direttamente all’ALU. E’ supportata la riprogrammazione in-circuit mediante porta TDI, JTAG o boot-loader. La catena di compilazione è la stessa dei dispositivi megaAVR; l’applicativo può essere compilato mediante l’Embedded Workbench AVR compiler di IAR (versione 5.x) o la versione open-source GCC WinAVR (revision 20080610 o successiva) inclusa in AVR Studio. I micro XMEGA A1 si presentano così come una soluzione flessibile e competitiva (anche dal punto di vista dei costi) per molte applicazioni embedded. La figura 1 riporta uno schema a blocchi dell’architettura dei dispositivi; le caratteristiche principali sono riassunte nel riquadro di approfondimento. Esempi di riferimento per l’utilizzo delle diverse periferiche a bordo del microcontrollore nelle più comuni applicazioni sono inoltre disponibili direttamente sul sito web di Atmel [2].

Figura 1: schema a blocchi dei micro XMEGA A1 (da [3]).

Figura 1: schema a blocchi dei micro XMEGA A1 (da [3]).

XPLAIN: UN KIT DI VALUTAZIONE PER XMEGA

Per valutare prestazioni e caratteristiche dei micro XMEGA, Atmel rende disponibile un interessante kit di sviluppo denominato Xplain (figura 2).

Figura 2: la scheda di valutazione Xplain.

Figura 2: la scheda di valutazione Xplain.

 

Figura 3: layout della scheda Xplain.

Figura 3: layout della scheda Xplain.

 

Figura 4: il programmatore incircuit JTAG ICE.

Figura 4: il programmatore in-circuit JTAG ICE.

Xplain include un microcontrollore ATxmega128A1, una memoria flash Atmel AT45DB642D ed una memoria SDRAM Micron MT48LC16M4A2TG entrambe di capacità 64 Mbit. La flash è di tipo seriale con interfaccia RapidS compatibile con le modalità 0 e 3 del protocollo SPI e connessa alla porta UARTC1 del micro che può operare in modalità master su tale bus. Il micro accede invece alla SDRAM mediante la porta EBI (External Bus Interface), l’interfaccia per la connessione di periferiche esterne come memorie, display LCD od, in generale, dispositivi memory-mapped. Gli ingressi dell’ADC dell’XMEGA (4 ingressi, 12 bit di risoluzione e fino a 2 Msps di frequenza di campionamento) sono connessi ad un termistore NTC, così da poter effettuare misure di temperatura, e ad un potenziometro. L’uscita analogica (12 bit di risoluzione, 1 Msps di frequenza di conversione, calibrazione built-in per offset e guadagno) è connessa invece ad un amplificatore audio mono da 1 W della serie TPA0253 in grado di pilotare speaker con resistenza fino a  8Ù. Sono disponibili poi 8 pulsati ed 8 LED connessi direttamente alle porte di I/O dell’XMEGA, mentre altrettante linee digitali ed analogiche sono portate su due header a 10-pin. Sono così accessibili direttamente dall’esterno alcune delle principali periferiche del microcontrollore come l’USART o le porte SPI e TWI. La scheda dispone, inoltre, di un microcontrollore AVR AT90USB1287 con controller Host/Device integrato  per  porta USB 2.0 che funziona come gateway di comunicazione e come programmatore per l’XMEGA. Una delle porte UART dell’ XMEGA è infatti direttamente connessa all’ AT90USB1287 che implementa così un bridge UART-to-USB per la connessione dell’XMEGA ad un PC remoto mediante porta USB. Sia  l’XMEGA  che l’AT90USB1287 possono essere ri-programmati in circuit; è, ad esempio, supportato il tool JTAG ICE che consente pure il debug a livello sorgente dell’applicativo utente. L’AT90USB1287 dispone poi di bootloader così da poter essere programmato direttamente dalla porta USB tramite FLIP (FLexible In-System Programmer), il software proprietario Atmel disponibile come plugin sotto AVR Studio. La programmazione diretta dell’ AT90USB1287 non è consigliata per evitare di cancellare il bootloader presente. Il kit Xplain viene fornito con un’applicazione di esempio già programmata a  bordo  dell’XMEGA; il microcontrollore riproduce differenti suoni a seconda dei pulsanti che vengono premuti. XPlain può essere alimentato mediante la porta USB direttamente dal PC host cui è connesso o tramite un adattatore di rete AC/DC fornito a corredo. E’ interessante notare come i progettisti della scheda abbiamo connesso il piano di alimentazione dell’XMEGA alla linea di alimentazione sulla scheda a 3.3V mediante un resistore che può facilmente essere sostituito con uno shunt così da consentire di misurare, nella particolare applicazione, la dissipazione di potenza del microcontrollore. Quando il kit è alimentato mediante l’adattatore di rete, l’AT90USB1287 non viene enumerato sulla rete USB ed opera in modalità loop-back. La scheda Xplain è correntemente disponibili a stock presso i principali distributori e può essere acquistata direttamente on-line ad un costo inferiore ai 30 dollari.

 

 

 

Una risposta

  1. maurizio.mussino 10 aprile 2019

Scrivi un commento