Firmware - Novembre 2014 / N°106 - (Page 40)

TOOLS to dei dati in ingresso all'LCD, deve essere sempre più veloce se si vogliono ottenere migliori soluzioni. - Frame Buffer - memoria volatile all'interno della quale viene memorizzato il dato inerente al colore con lo scopo di aggiornare la visualizzazione. - Pixel Throughput - velocità alla quale un pixel può essere ridipinto. Il tempo di rappresentazione dell'intero frame sarà il prodotto tra il pixel throughput e la risoluzione. - profondità di colore - definisce il numero di possibili colori che un pixel può assumere. Comunemente rappresentata in bit, il suo valore tipico è 16. IMPOSTIAMO IL SISTEMA In linea generale, un sistema come quello che stiamo descrivendo ha bisogno di inviare l'informazione, ovvero il frame, per mostrare l'immagine ad una certa frequenza. Il refresh rate è, infatti, come abbiamo già ribadito, una figura di merito fondamentale. Tipicamente il suo valore è pari a 60 Hz e per svolgere il suo compito e il sistema deve provvedere ad un invio costante dei dati al pannello LCD. Ad un primo sguardo, sembra quasi che questo compito venga svolto assorbendo tutte le risorse del microcontrollore ma questo non è del tutto vero perché tutti i microcontrollori, PIC32, che contengono il DMA, ovvero la periferica per l'accesso diretto alla memoria (Direct Memory Access) possono impiegare fino ad un massimo del 5% del tempo del processore. Questo vuol dire che tutte le MCU PIC32 devono avere il DMA embedded. La periferica in oggetto può trasferire dati da una locazione ad un'altra senza che sia richiesto l'intervento del processore. Figura 2: Uso della SRAM interna per l'accesso DMA del display Nel metodo controllerless, il DMA è impostato in maniera tale che trasferisca una intera linea di dati del frame attraverso la Parallel Master Port (PMP). Naturalmente, ciascuna linea di dati sarà costituita dal valore relativo a più pixel. Il DMA invierà una porzione del frame buffer durante la trasmissione. Il PMP, o in alternativa un timer, verrà utilizzato per l'azione di trigger del trasferimento, necessaria per scandire che lo stesso è stato completato. Nei dispositivi PIC32 con interrupt non persistenti viene utilizzato un timer come DMA trigger source. Durante il trasferimento il PMP produce un segnale di lettura scrittura che, in verità, segnala la fine di ogni trasferimento. Esso funziona come un segnale di clock per il display. Dopo che ciascuna linea di dati è stata trasferita, la CPU riceve l'istruzione di fermarsi direttamente dal DMA ed alcuni segnali di temporizzazione (HSYNC, VSYNC e così via dicendo), necessari per il funzionamento dei display LCD, vengono aggiornati. Questo processo viene ripetuto continuativamente fino a quando l'intero frame è stato rappresentato. Il frame viene memorizzato in una memoria volatile in maniera tale che l'immagine possa essere dinamica. In questo setup il tipo di memoria utilizzato è SRAM e questa configurazione è quella di base per i sistemi di cui stiamo trattando. L'intero sistema può essere impostato per utilizzare memorie SRAM interne oppure esterne. Il suo diagramma viene mostrato nelle figure 1 e 2. La mappatura dei colori su un display LCD TFT viene realizzata tramite l'utilizzo di PMP data lines. A seconda del formato del colore utilizzato, le 16 PMP data lines possono essere configurate in maniera tale da trasmettere l'informazione sul colore. Quando si utilizza la modalità 8 BPP, soltanto 8 data lines sono richieste. Quando si utilizza la memoria esterna per un 16 BPP, è possibile utilizzare anche 8 data lines ed in questo caso quelle sulla memoria esterna sono ancora rappresentate sull'LCD in modalità 16 BPP. Le MCU PIC32 si connettono alla memoria attraverso 8 bit; quando è necessario che venga eseguita un'operazione di scrittura, il microcontrollore può utilizzare byte pin alti o bassi direttamente sulla memoria esterna per inviare i valori alla SRAM. Esistono diversi esempi di queste routine ed il codice che implementa queste operazioni deve essere scritto in maniera tale da rispettare alcuni passi concettuali: - definizione del metodo di controllo; - impostazione dell'indirizzo; - apertura del canale DMA; - impostare l'evento di controllo per il trasferimento; - impostare i parametri per il trasferimento; - impostare la priorità dell'operazione; - abilitare il trasferimento; - abilitare l'interrupt sul controller; - abilitare il canale DMA; - iniziare il trasferimento;

Tabella dei contenuti per la edizione digitale del Firmware - Novembre 2014 / N°106

SOMMARIO
FOCUS on “Don’t try this at home”
Skills Accesso e controllo remoto RF
INside
I motori Brushless DC
Silicon Labs Si106x-108x: MCU con Wireless Sub-Giga ad Alte Prestazioni
ANALOG Alimentatore DC da Banco ad Alte Prestazioni
SPOTlight Carica, Scarica e Bilanciamento dei Supercondensatori
Tools
“Low Cost Controllerless” con PIC32
Code Composer Studio: il Ruolo degli Script nello Sviluppo del Codice
Linear Technology “PowerCAD II” La Progettazione Assistita dei Convertitori DC/DC
News
EVENTS
Guida

Firmware - Novembre 2014 / N°106

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