Test for LDC display

Dependencies:   TextLCD mbed

Committer:
hgomez
Date:
Mon Jun 03 21:12:17 2013 +0000
Revision:
0:89eeddc7e25d
initial import

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hgomez 0:89eeddc7e25d 1 /*
hgomez 0:89eeddc7e25d 2 * http://mbed.org/cookbook/Text-LCD-Enhanced
hgomez 0:89eeddc7e25d 3 */
hgomez 0:89eeddc7e25d 4
hgomez 0:89eeddc7e25d 5 #include "mbed.h"
hgomez 0:89eeddc7e25d 6 #include "TextLCD.h"
hgomez 0:89eeddc7e25d 7
hgomez 0:89eeddc7e25d 8 TextLCD lcd(p15, p16, p17, p18, p19, p20, TextLCD::LCD16x4); //
hgomez 0:89eeddc7e25d 9
hgomez 0:89eeddc7e25d 10 int main() {
hgomez 0:89eeddc7e25d 11
hgomez 0:89eeddc7e25d 12 pc.printf("LCD Test. Columns=%d, Rows=%d\n\r", lcd.columns(), lcd.rows());
hgomez 0:89eeddc7e25d 13
hgomez 0:89eeddc7e25d 14 for (int row=0; row<lcd.rows(); row++) {
hgomez 0:89eeddc7e25d 15 int col=0;
hgomez 0:89eeddc7e25d 16
hgomez 0:89eeddc7e25d 17 pc.printf("MemAddr(Col=%d, Row=%d)=0x%02X\n\r", col, row, lcd.getAddress(col, row));
hgomez 0:89eeddc7e25d 18 // lcd.putc('-');
hgomez 0:89eeddc7e25d 19 lcd.putc('0' + row);
hgomez 0:89eeddc7e25d 20
hgomez 0:89eeddc7e25d 21 for (col=1; col<lcd.columns()-1; col++) {
hgomez 0:89eeddc7e25d 22 lcd.putc('*');
hgomez 0:89eeddc7e25d 23 }
hgomez 0:89eeddc7e25d 24
hgomez 0:89eeddc7e25d 25 pc.printf("MemAddr(Col=%d, Row=%d)=0x%02X\n\r", col, row, lcd.getAddress(col, row));
hgomez 0:89eeddc7e25d 26 lcd.putc('+');
hgomez 0:89eeddc7e25d 27
hgomez 0:89eeddc7e25d 28 }
hgomez 0:89eeddc7e25d 29
hgomez 0:89eeddc7e25d 30 // Show cursor as blinking character
hgomez 0:89eeddc7e25d 31 lcd.setCursor(TextLCD::CurOff_BlkOn);
hgomez 0:89eeddc7e25d 32
hgomez 0:89eeddc7e25d 33 // Set and show user defined characters. A maximum of 8 UDCs are supported by the HD44780.
hgomez 0:89eeddc7e25d 34 // They are defined by a 5x7 bitpattern.
hgomez 0:89eeddc7e25d 35 lcd.setUDC(0, (char *) udc_0); // Show |>
hgomez 0:89eeddc7e25d 36 lcd.putc(0);
hgomez 0:89eeddc7e25d 37 lcd.setUDC(1, (char *) udc_1); // Show <|
hgomez 0:89eeddc7e25d 38 lcd.putc(1);
hgomez 0:89eeddc7e25d 39 lcd.setUDC(2, (char *) udc_2);
hgomez 0:89eeddc7e25d 40 lcd.putc(2);
hgomez 0:89eeddc7e25d 41 lcd.setUDC(3, (char *) udc_3);
hgomez 0:89eeddc7e25d 42 lcd.putc(3);
hgomez 0:89eeddc7e25d 43 lcd.setUDC(4, (char *) udc_4);
hgomez 0:89eeddc7e25d 44 lcd.putc(4);
hgomez 0:89eeddc7e25d 45 lcd.setUDC(5, (char *) udc_5);
hgomez 0:89eeddc7e25d 46 lcd.putc(5);
hgomez 0:89eeddc7e25d 47 lcd.setUDC(6, (char *) udc_6);
hgomez 0:89eeddc7e25d 48 lcd.putc(6);
hgomez 0:89eeddc7e25d 49 lcd.setUDC(7, (char *) udc_7);
hgomez 0:89eeddc7e25d 50 lcd.putc(7);
hgomez 0:89eeddc7e25d 51
hgomez 0:89eeddc7e25d 52 }