Abstract:
|
L’objectiu d’aquest treball consisteix a programar un conjunt de llibreries en llenguatge C que
permetin controlar una pantalla LCD tàctil a través d’un microcontrolador i documentar-les
adientment.
Per desenvolupar aquest treball s’ha fet servir la placa de desenvolupament “PIC18F
Development Board” juntament amb el microcontrolador PIC18F4520 de la companyia
Microchip i una pantalla LCD tàctil “Waveshare LCD 22”.
En aquest projecte no es pretén desenvolupar una aplicació sinó que es busca dissenyar
unes llibreries robustes i senzilles que permetin crear aplicacions basades en el
microcontrolador i la pantalla esmentats.
El proveïdor d’aquest hardware proporciona un software que hauria de permetre controlar
els diferents perifèrics que es poden connectar a la placa de desenvolupament. Aquest codi
és molt limitat, presenta errors de programació i no està ben documentat i estructurat.
Per aquesta raó s’han programat un total de sis llibreries en llenguatge de programació C
que permeten controlar i interactuar amb la pantalla LCD.
S’han agrupat les llibreries en dos grans blocs: alt i baix nivell, segons la complexitat del
codi que contenen i si estan destinades a ser utilitzades per l’usuari final.
Les llibreries de baix nivell ofereixen unes funcions que permeten comunicar el
microcontrolador amb els controladors de la pantalla, a més de configurar i inicialitzar la
pantalla i modificar els registres dels controladors de la pantalla que permeten representar
imatges.
Les llibreries de més alt nivell ofereixen un conjunt de funcions que permeten editar i
escriure text sobre la pantalla, generar tot tipus de formes geomètriques i interactuar amb les
funcionalitats tàctils de la pantalla.
A més, per verificar que les llibreries programades funcionen correctament s’ha programat
una aplicació basada en algunes de les funcions d’aquestes llibreries. Aquesta aplicació és
una versió d’un famós joc anomenat “Snake”.
Finalment, s’ha redactat un manual d’usuari on s’explica de forma senzilla i concisa com
utilitzar totes i cada una de les funcions dissenyades. |