A simple 128x32 graphical LCD program to quickstart with LCD on ARM mbed IoT Starter Kit. This requires mbed Applciation Shield with FRDM-K64F platform.
main.cpp@1:eb68c94a8ee5, 2015-04-12 (annotated)
- Committer:
- tushki7
- Date:
- Sun Apr 12 15:45:52 2015 +0000
- Revision:
- 1:eb68c94a8ee5
- Parent:
- 0:60d829a0353a
A simple 128x32 LCD program with ARM mbed IoT Starter Kit;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tushki7 | 0:60d829a0353a | 1 | /*___________________________________________________________*/ |
tushki7 | 0:60d829a0353a | 2 | /* A simple LCD program for ARM mbed IoT Starter Kit */ |
tushki7 | 0:60d829a0353a | 3 | /* LCD name : C12832A1Z LCD : 128X32 */ |
tushki7 | 0:60d829a0353a | 4 | /* nCS : D10 : PTD0 */ |
tushki7 | 0:60d829a0353a | 5 | /* A0 : D7 : PTC3 */ |
tushki7 | 0:60d829a0353a | 6 | /* SCK : D13 : PTD1 */ |
tushki7 | 0:60d829a0353a | 7 | /* RESET : D12 : PTD3 */ |
tushki7 | 0:60d829a0353a | 8 | /* MOSI : D11 : PTD2 */ |
tushki7 | 0:60d829a0353a | 9 | /*___________________________________________________________*/ |
tushki7 | 0:60d829a0353a | 10 | /* AUTHOR : mudz */ |
tushki7 | 0:60d829a0353a | 11 | /*___________________________________________________________*/ |
tushki7 | 0:60d829a0353a | 12 | |
tushki7 | 0:60d829a0353a | 13 | #include "mbed.h" |
tushki7 | 0:60d829a0353a | 14 | #include "C12832.h" |
tushki7 | 0:60d829a0353a | 15 | #include "Arial12x12.h" |
tushki7 | 0:60d829a0353a | 16 | #include "Small_7.h" |
tushki7 | 0:60d829a0353a | 17 | |
tushki7 | 0:60d829a0353a | 18 | |
tushki7 | 0:60d829a0353a | 19 | DigitalOut gpo(D0); |
tushki7 | 0:60d829a0353a | 20 | DigitalOut led(LED_GREEN); |
tushki7 | 0:60d829a0353a | 21 | DigitalOut ledR(LED_RED); |
tushki7 | 0:60d829a0353a | 22 | DigitalOut ledB(LED_BLUE); |
tushki7 | 0:60d829a0353a | 23 | C12832 lcd(D11, D13, D12, D7, D10); |
tushki7 | 0:60d829a0353a | 24 | |
tushki7 | 0:60d829a0353a | 25 | /** |
tushki7 | 0:60d829a0353a | 26 | * Display a message on the LCD screen |
tushki7 | 0:60d829a0353a | 27 | */ |
tushki7 | 0:60d829a0353a | 28 | void displayMessage(char* message) |
tushki7 | 0:60d829a0353a | 29 | { |
tushki7 | 0:60d829a0353a | 30 | lcd.cls(); |
tushki7 | 0:60d829a0353a | 31 | lcd.printf(message); |
tushki7 | 0:60d829a0353a | 32 | } |
tushki7 | 0:60d829a0353a | 33 | |
tushki7 | 0:60d829a0353a | 34 | int main() |
tushki7 | 0:60d829a0353a | 35 | { |
tushki7 | 0:60d829a0353a | 36 | int i=4; |
tushki7 | 0:60d829a0353a | 37 | while (true) |
tushki7 | 0:60d829a0353a | 38 | { |
tushki7 | 0:60d829a0353a | 39 | lcd.set_contrast(i); // Use i to control Contrast value |
tushki7 | 0:60d829a0353a | 40 | |
tushki7 | 0:60d829a0353a | 41 | if(i%2==0) |
tushki7 | 0:60d829a0353a | 42 | { |
tushki7 | 0:60d829a0353a | 43 | lcd.set_font((unsigned char*) Arial12x12); // Set Arial font for the LCD screen |
tushki7 | 0:60d829a0353a | 44 | lcd.locate(8,8); // Location of the Text on Screen |
tushki7 | 0:60d829a0353a | 45 | ledR = !ledR; // toggle led |
tushki7 | 0:60d829a0353a | 46 | } |
tushki7 | 0:60d829a0353a | 47 | |
tushki7 | 0:60d829a0353a | 48 | if(i%2==1) |
tushki7 | 0:60d829a0353a | 49 | { |
tushki7 | 0:60d829a0353a | 50 | lcd.set_font((unsigned char*) Small_7); // Set Small_7 font for the LCD screen |
tushki7 | 0:60d829a0353a | 51 | lcd.locate(16,12); |
tushki7 | 0:60d829a0353a | 52 | ledB = !ledB; // toggle led |
tushki7 | 0:60d829a0353a | 53 | } |
tushki7 | 0:60d829a0353a | 54 | |
tushki7 | 1:eb68c94a8ee5 | 55 | displayMessage("Hello Sir, I'm Online"); // Message |
tushki7 | 0:60d829a0353a | 56 | gpo = !gpo; // toggle pin |
tushki7 | 0:60d829a0353a | 57 | led = !led; // toggle led |
tushki7 | 0:60d829a0353a | 58 | |
tushki7 | 0:60d829a0353a | 59 | wait(0.8f); |
tushki7 | 0:60d829a0353a | 60 | i++; |
tushki7 | 0:60d829a0353a | 61 | if(i==35) // Contrast value after this text will not be visible |
tushki7 | 0:60d829a0353a | 62 | { |
tushki7 | 0:60d829a0353a | 63 | i=4; // Contrast value |
tushki7 | 0:60d829a0353a | 64 | } |
tushki7 | 0:60d829a0353a | 65 | |
tushki7 | 0:60d829a0353a | 66 | } |
tushki7 | 0:60d829a0353a | 67 | } |