test

Dependencies:   4DGL-uLCD-SE mbed

Committer:
wye11
Date:
Sat Jan 30 06:01:10 2016 +0000
Revision:
0:5dca0ddf051f
Child:
1:232add586315
test

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wye11 0:5dca0ddf051f 1 // Demo for the uLCD-144-G2 based on the work by Jim Hamblen
wye11 0:5dca0ddf051f 2
wye11 0:5dca0ddf051f 3 #include "mbed.h"
wye11 0:5dca0ddf051f 4 #include "uLCD_4DGL.h"
wye11 0:5dca0ddf051f 5
wye11 0:5dca0ddf051f 6 // TX, RX, and RES pins
wye11 0:5dca0ddf051f 7 uLCD_4DGL uLCD(p9,p10,p11);
wye11 0:5dca0ddf051f 8
wye11 0:5dca0ddf051f 9 int main() {
wye11 0:5dca0ddf051f 10
wye11 0:5dca0ddf051f 11 int x;
wye11 0:5dca0ddf051f 12 int y;
wye11 0:5dca0ddf051f 13 int radius;
wye11 0:5dca0ddf051f 14 int vx;
wye11 0:5dca0ddf051f 15
wye11 0:5dca0ddf051f 16 // Set our UART baudrate to something reasonable
wye11 0:5dca0ddf051f 17 uLCD.baudrate(115200);
wye11 0:5dca0ddf051f 18
wye11 0:5dca0ddf051f 19 // Change background color (must be called before cls)
wye11 0:5dca0ddf051f 20 uLCD.background_color(WHITE);
wye11 0:5dca0ddf051f 21
wye11 0:5dca0ddf051f 22 // Clear screen with background color
wye11 0:5dca0ddf051f 23 uLCD.cls();
wye11 0:5dca0ddf051f 24
wye11 0:5dca0ddf051f 25 // Change background color of text
wye11 0:5dca0ddf051f 26 uLCD.textbackground_color(WHITE);
wye11 0:5dca0ddf051f 27
wye11 0:5dca0ddf051f 28 // Make some colorful text
wye11 0:5dca0ddf051f 29 uLCD.locate(4, 1); // Move cursor
wye11 0:5dca0ddf051f 30 uLCD.color(BLUE);
wye11 0:5dca0ddf051f 31 uLCD.printf("This is a\n");
wye11 0:5dca0ddf051f 32 uLCD.locate(5, 3); // Move cursor
wye11 0:5dca0ddf051f 33 uLCD.text_width(2); // 2x normal size
wye11 0:5dca0ddf051f 34 uLCD.text_height(2); // 2x normal size
wye11 0:5dca0ddf051f 35 uLCD.color(RED); // Change text color
wye11 0:5dca0ddf051f 36 uLCD.printf("TEST");
wye11 0:5dca0ddf051f 37 uLCD.text_width(1); // Normal size
wye11 0:5dca0ddf051f 38 uLCD.text_height(1); // Normal size
wye11 0:5dca0ddf051f 39 uLCD.locate(3, 6); // Move cursor
wye11 0:5dca0ddf051f 40 uLCD.color(BLACK); // Change text color
wye11 0:5dca0ddf051f 41 uLCD.printf("of my new LCD");
wye11 0:5dca0ddf051f 42
wye11 0:5dca0ddf051f 43 // Initial parameters for the circle
wye11 0:5dca0ddf051f 44 x = 50;
wye11 0:5dca0ddf051f 45 y = 100;
wye11 0:5dca0ddf051f 46 radius = 4;
wye11 0:5dca0ddf051f 47 vx = 1;
wye11 0:5dca0ddf051f 48
wye11 0:5dca0ddf051f 49 // Make a ball bounce back and forth
wye11 0:5dca0ddf051f 50 while (1) {
wye11 0:5dca0ddf051f 51
wye11 0:5dca0ddf051f 52 // Draw a dark green
wye11 0:5dca0ddf051f 53 uLCD.filled_circle(x, y, radius, 0x008000);
wye11 0:5dca0ddf051f 54
wye11 0:5dca0ddf051f 55 // Bounce off the edges
wye11 0:5dca0ddf051f 56 if ((x <= radius + 1) || (x >= 126 - radius)) {
wye11 0:5dca0ddf051f 57 vx = -1 * vx;
wye11 0:5dca0ddf051f 58 }
wye11 0:5dca0ddf051f 59
wye11 0:5dca0ddf051f 60 // Wait before erasing old circle
wye11 0:5dca0ddf051f 61 wait(0.02); // In seconds
wye11 0:5dca0ddf051f 62
wye11 0:5dca0ddf051f 63 // Erase old circle
wye11 0:5dca0ddf051f 64 uLCD.filled_circle(x, y, radius, WHITE);
wye11 0:5dca0ddf051f 65
wye11 0:5dca0ddf051f 66 // Move circle
wye11 0:5dca0ddf051f 67 x = x + vx;
wye11 0:5dca0ddf051f 68 }
wye11 0:5dca0ddf051f 69 }