© Harry Broeders.
Deze pagina is bestemd voor studenten van de THRijswijk.
De 68HC11 EVM kasten van de THRijswijk zijn uitgerust met een LCD display. Dit display bevat 4 regels van elk 20 karakters. Dit display wordt ook gesimuleerd door THRSim11 (menu View, THRSim11 IO box).
Er zijn verschillende functies beschikbaar waarmee de LCD vanuit C aangestuurd kan worden. Deze functies zijn in de file lcd.h gedefinieerd:
void lcd_init(void); /* initialiseer de lcd */void lcd_clrscr(void); /* maak de lcd leeg */void lcd_putc(char c); /* schrijf karakter c naar de lcd */void lcd_puts(const char* str); /* schrijf c string str naar de lcd */void lcd_setpos(short row, short col); /* zet de cursor op regel row (0..3) en kolom col (0..19) */short lcd_getrow(void); /* haal nummer van de regel waarop de cursor staat (0..3) */short lcd_getcol(void); /* haal nummer van de kolom waarop de cursor staat (0..19) */void lcd_cursor_off(void); /* zet de cursor uit (onzichtbaar) */void lcd_cursor_on_blink(void); /* zet de cursor aan (knipperend blokje). Werkt NIET in THRSim11 */void lcd_cursor_on_noblink(void); /* zet de cursor aan (streepje). Werkt NIET in THRSim11 */
Deze functies kunnen bijvoorbeeld als volgt gebruikt worden (lcd_test.c):
#include "lcd.h"int main() {lcd_init();lcd_cursor_off();lcd_puts("Hallo");lcd_setpos(lcd_getrow()+1, lcd_getcol()+1);lcd_puts("68HC11");lcd_setpos(lcd_getrow()+1, lcd_getcol()+1);lcd_puts("wereld");lcd_setpos(3, 19);lcd_putc('!');while (1);return 0;}
Bij het linken moet de library file liblcd.a of libsimlcd.a meegelinkt worden.
De gewenste library kan eenvoudig in de makefile worden opgegeven:
# Makefile to cross compile and assemble for Motorola EVM board # with a MC68HC11 processor using the GNU compiler package. # Harry Broeders 14 November 2004 # list all object files here: OBJECTS = lcd_test.o # list all libraries here: LIBS = -L. -lsimlcd![]()
Het voorbeeldprogramma geeft in de THRSim11 simulator het volgende resultaat:
Na les7 van MICB2 of les 12 van MCCA ken je
de betekenis van de optie -mshort. De versies van de LCD library
die zijn gecompileerd met -mshort kun je hier vinden:
liblcd.a en
libsimlcd.a.