Casa > Notícies > Contingut

Controlador de pantalla tàctil LCD

Dec 13, 2017

El controlador de pantalla tàctil LCD inclou un mòdul de memòria de dades, mòdul de memòria (FSMC_Ctrl (SDRAM_Ctrl), mòdul de visualització de cristall líquid (TFT_Ctrl) i un mòdul de control tàctil (TOUCH_Ctrl), el diagrama de blocs que es mostra a la figura 2.

2.png

Processador de treball de controlador de pantalla tàctil LCD: microprocessador (STM32F407) a través de l'autobús FSMC per enviar dades a la FPGA, el mòdul FSMC_Ctrl per rebre dades, el control de temporització SDRAM_Ctrl SDRAM, el control de temporització del mòdul TFT_Ctrl des de SDRAM per llegir dades en visualització en temps real. El mòdul TOUCH_Ctrl acciona el xip de control tàctil ADS7843 i envia les coordenades recollides al mòdul FSMC_Ctrl per esperar que ARM la llegeixi regularment.


1. Mòdul d'interacció de dades

El mòdul d'intercanvi de dades és la clau per a la realització de la transmissió de dades bidireccionals, l'autobús FSMC inclòs el senyal de selecció de xips CS i el senyal d'escriptura WR, el senyal de lectura RD, l'AB 25: 0 (mode de multiplexació), bus de dades DB 15: 0 i adreça / senyal de control de multiplexació de dades NADV (amb línia d'adreça multiplexada). Entre ells, el senyal selecte de xip CS, les operacions de lectura i escriptura del senyal RD de senyal WR solen ser efectives a baixa potència. Quan escriviu el senyal d'operació WR per a baix consum, ARM envia l'adreça de visualització de cristall líquid i les dades al bus DB, l'adreça de tancament a la vora ascendent del senyal NADV i les dades corresponents a la vora ascendent del senyal WR, que es mostra a la LCD després de la memòria cau de SDRAM. Quan el senyal RD de funcionament de lectura és baix, FPGA envia les coordenades tàctils al bus DB. ARM realitza l'operació tàctil segons el valor de coordenades del registre de l'espai d'adreces de mapatge i el diagrama de seqüència de treball de l'autobús FSMC es mostra a la figura 3.

3.png


2. Mòdul de visualització de cristall líquid

Segons el principi de visualització de la pantalla de cristall líquid, el senyal controlat per aquest mòdul inclou principalment senyal de rellotge de píxel, senyal síncron de línia / camp i habilita senyal. Segons el requisit del temps de visualització LCD, el temps de control de la pantalla LCD està dissenyat per FPGA, i es realitza el control del senyal de línia, el senyal de marc i el senyal ocult.

Entre ells, la seqüència de temps d'escaneig de marc es basa en HSYNC com a rellotge de referència, HSYNC s'utilitza com a senyal de línia d'escaneig, i VSYNC és un senyal de sincronització de marc, i el baix nivell és efectiu. Cada fotograma s'escaneja, l'àrea efectiva de la part frontal del senyal VSYNC és un espatlla d'obertura de marc (VBPD + 1), hi ha un espatlla frontal de marcatge posterior (VFPD + 1), el senyal VSYNC efectiu abans que hi hagi una alta nivell (VSPW + 1), aquest senyal de amplada de pols de la sincronització del marc. Entre ells, VBPD, VFPD i VSPW es basen en el rellotge de referència HSYNC. De la mateixa manera, per a cada fila de senyals d'escaneig, també hi ha un amortidor posterior amagat (HBPD + 1), un amortidor frontal amagat (HFPD + 1), un ample de pols de senyal síncron de línia (HSPW + 1) i un rellotge de píxel VCLK com una unitat. Per a diferents pantalles LCD de resolució, el temps de visualització és diferent de l'espatlla frontal, l'espatlla oculta i l'amplada del pols del senyal. El controlador de pantalla només pot canviar les diferents pantalles LCD modificant aquests paràmetres.

Per fer que la pantalla LCD mostri el controlador per a una varietat de resolució diferent, dins del llenguatge de maquinari FPGA Verilog amb paràmetres pre VCLK, VBPD, VFPD, VSPW, HBPD, HFPD, HSPW de diferents pantalles LCD, utilitzant la línia de direcció de bus FSMC 2 com els paràmetres de control d'una pantalla LCD. En l'aplicació, només hem de canviar l'adreça del registre del mapa de bits de control per realitzar la configuració de paràmetres, que és adequat per a diferents pantalles LCD i millora la portabilitat del controlador. El diagrama de seqüència del temps de la pantalla de cristall líquid es mostra a la figura 4.

4.png

3. Mòdul de memòria

El mòdul de memòria inclou el mòdul de preprocessament de dades, el controlador SDRAM i el mòdul de memòria cau, principalment per completar l'emmagatzematge de dades d'entrada i mostrar les dades llegides. L'estructura del mòdul de memòria que es mostra a la figura 5.

5.png

4. Mòdul de preprocessament de dades

El mòdul de preprocessament de dades inclou principalment la integració i l'emmagatzematge en memòria cau de dades. Atès que la velocitat de transmissió de dades de l'autobús FSMC és molt inferior a la freqüència de treball de SDRAM, per resoldre la disparitat entre ells, les dades s'emmagatzemen en memòria cau abans que les dades s'escrivissin en SDRAM per evitar la pèrdua de dades.

Per assegurar la correspondència entre les dades de visualització i l'adreça, eviteu l'error de visualització, l'adreça i la informació de dades mostrada per splicing, l'empalmament després d'escriure les dades en un buffer FIFO (primer en primer lloc, FIFO), l'operació d'escriptura a esperar per SDRAM.


5. Mòdul de memòria cau

El mòdul de memòria cau inclou dues memòries d'accés aleatori individuals (memòria d'accés aleatori, RAM), la funció principal és obtenir dades de funcionament de ping-pong de sortida contínua mitjançant dues memòries RAM, el principi d'operació de ping-pong tal com es mostra a la figura 6.

6.png

Per tal de realitzar la visualització contínua de les dades de sortida, a la profunditat de dues trucades de FPGA internes SDRAM de 2048, amplada de 16 RAM, a través de la unitat de selecció de la seqüència de dades d'entrada "i" unitat de selecció de la transmissió de dades de sortida "per canviar de forma regular , després de la memòria cau de memòria RAM, la transmissió de dades s'envia continuadament a la unitat de processament del flux de dades "processament".

Les dades de cada marc en el procés de visualització, en el senyal de primera a dues línies abans de l'arribada del senyal síncron durant la lectura prèvia de les dades en el SDRAM, RAM1 i RAM2, per escriure dades amb antelació, de manera que en un primer senyal d'habilitació es pot llegir amb èxit la visualització de dades RAM1 completada immediatament des de la previa SDRAM llegeix les dades de la següent línia a RAM1.

A la segona regió d'habilitació de senyal DE, es llegeix i es mostra la RAM2, i el procés és el mateix que RAM1. Al seu torn, RAM1 i RAM2 són llegits i escrits alternativament per completar la sortida contínua de dades.


6. controlador sdram

Atès que la pantalla LCD requereix una sortida de dades contínua i no hi ha interrupció de dades durant cada senyal d'habilitació, de manera que hem de configurar l'operació de lectura de SDRAM com la màxima prioritat. En tot el control SDRAM, hem de centrar-nos en el control de lectura de dades.

El controlador SDRAM controla principalment les operacions d'inicialització, actualització, lectura i escriptura de SDRAM, i el control de lectura i escriptura de SDRAM és el nucli d'aquest mòdul. És la clau per millorar la taxa d'actualització de dades i reduir la càrrega del processament de dades ARM.

Per tant, el disseny del controlador SDRAM es dirigeix principalment a millorar la taxa d'actualització de dades i reduir els dos aspectes de la càrrega de processament de dades ARM.


Per millorar la taxa d'actualització de dades, s'adopta el mètode de lectura i escriptura del temps compartit per aprofitar al màxim el temps inactiu que proporciona el buffer de dades. També es configura un comptador durant l'operació de lectura de SDRAM. El valor màxim del comptador és M (M és el píxel de fila de cristall líquid diferent), de manera que les dades efectives es poden escriure RAM per llegir-les convenientment.

D'una banda, la lectura del mode de lectura d'explosió s'utilitza en el procés de funcionament en SDRAM, cadascun llegeix 256 dades establertes una vegada més esperant la lectura següent, fins que es llegeixin dades vàlides; d'altra banda, d'acord amb l'operació de ping-pong, es configura un comptador independent, el valor màxim és Y / 2 (Y per a diferents píxels LCD), cadascun dels quals compleix un comptador d'operacions de ping-pong més 1, acumulat al màxim zero indica que es completa una visualització de dades, SDRAM ha d'esperar fins al fotograma següent per mostrar dades.

En el controlador de control de dos intervals d'espera per recuperar el bus de dades SDRAM, escriviu l'operació de SDRAM, escurceu el temps d'espera de l'operació d'escriptura del SDRAM, una operació d'escriptura mitjançant el mode d'escriptura d'arrencada, cada ràfega 1 escriu 8 dades, alleuja el problema resultant de la pèrdua de dades FSCM d'alta velocitat i no pot introduir dades en guardar l'ample de banda del SDRAM, millora la taxa d'actualització de dades.

Un temps d'operació de refresc fix (N s'ajusta segons la resolució de cristall líquid) en el primer període de N fila de cada data del marc, el que garanteix que tot el Banc en SDRAM es pugui actualitzar en 64 ms, per evitar conflictes entre l'operació de refresc i llegir i escriu l'operació.


Per millorar la velocitat d'actualització de la pantalla, reduir la càrrega del processament de dades del cristall líquid ARM, s'ajustarà a l'espai del buffer de l'adreça de la memòria del Banc, es divideix en 4 capes, cada capa té controlador de 2 MB i SDRAM a través de múltiples operacions de memòria intermèdia de múltiples SDRAM per aconseguir el disseny del accelerador de maquinari, el seu principi de funcionament tal com es mostra a la figura 7.

7.png

L'accelerador realitza un control lògic personalitzat a través d'instruccions personalitzades i taules de cerca, i aconsegueix diverses operacions de FPGA en dades, com realitzar funcions d'operació matemàtica complexes, transferir dades d'un lloc a un altre i realitzar la mateixa operació moltes vegades.

En el procés de visualització de cristall líquid, d'una banda, el SDRAM es dividirà en 4 nivells, Bank1 com a fons, al seu torn Bank2, Bank3, Bank4, a través de l'operació multi, no pot canviar la premissa subjacent de la pantalla, modificar-la àrea de memòria intermèdia a través de la primera adreça d'instruccions per actualitzar una regió sense ARM de dades per enviar dades;

D'altra banda, SDRAM es divideix en 4 buffers. En enviar instruccions personalitzades, utilitzem taula de cerca per realitzar operacions matemàtiques en diferents dades de la zona de memòria intermèdia i realitzeu visualització transparent i altres funcions.

Emmagatzemant les dades abans del marc de visualització a Bank1, emmagatzemant les dades del marc que es mostraran a Bank2 i Bank3, mostrant el final de les últimes dades del marc, mostrant les dades del quadre següent directament a través de la instrucció, garantint la integritat de les dades del marc de visualització i millorant l'efecte visual de la pantalla LCD. Mitjançant l'operació de múltiples capes i finestres, una part del processament de dades s'assigna a FPGA per al processament paral·lel per reduir la càrrega del processament de dades ARM. En comparació amb el mode de processament en sèrie d'ARM, es pot millorar la taxa d'actualització de dades.