CaryCoders / Mbed 2 deprecated SX1276_GPS

Dependencies:   SX1276Lib AdaFruit_RGBLCD MCP23017 mbed

Fork of AdaFruit_RGBLCD by Justin Howard

Committer:
vtraveller
Date:
Sun Aug 03 15:14:56 2014 +0000
Revision:
7:d087e901b74b
Parent:
6:a6be2aede8f2
Child:
9:1501fb01ded6
Updated app

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wim 0:88d87b1c1f8b 1 #include "mbed.h"
vtraveller 4:d70e37f6c6bd 2
vtraveller 4:d70e37f6c6bd 3 #include "Adafruit_RGBLCDShield.h"
vtraveller 4:d70e37f6c6bd 4 //#include "MCP23017.h"
wim 0:88d87b1c1f8b 5
vtraveller 3:ed09f95739df 6 Serial pc(SERIAL_TX, SERIAL_RX);
wim 0:88d87b1c1f8b 7
vtraveller 3:ed09f95739df 8 MCP23017 mcp23017 = MCP23017(I2C_SDA, I2C_SCL, 0x40);
vtraveller 7:d087e901b74b 9 Adafruit_RGBLCDShield lcd(mcp23017);
vtraveller 3:ed09f95739df 10
vtraveller 3:ed09f95739df 11 // Allows to set the backlight, if the LCD backpack is used
vtraveller 3:ed09f95739df 12 void SetBacklight(unsigned char status)
vtraveller 3:ed09f95739df 13 {
vtraveller 3:ed09f95739df 14 pc.printf("Backlight: %i\n\r", status);
vtraveller 3:ed09f95739df 15
vtraveller 3:ed09f95739df 16 mcp23017.digitalWrite(8, (~(status >> 2) & 0x1));
vtraveller 3:ed09f95739df 17 mcp23017.digitalWrite(7, (~(status >> 1) & 0x1));
vtraveller 3:ed09f95739df 18 mcp23017.digitalWrite(6, (~status & 0x1));
vtraveller 3:ed09f95739df 19 }
wim 0:88d87b1c1f8b 20
vtraveller 4:d70e37f6c6bd 21 void loop()
vtraveller 3:ed09f95739df 22 {
vtraveller 7:d087e901b74b 23 static int count = 0;
vtraveller 6:a6be2aede8f2 24
vtraveller 4:d70e37f6c6bd 25 uint8_t buttons = lcd.readButtons();
vtraveller 7:d087e901b74b 26
vtraveller 4:d70e37f6c6bd 27 if (buttons)
vtraveller 4:d70e37f6c6bd 28 {
vtraveller 7:d087e901b74b 29 count = 0;
vtraveller 7:d087e901b74b 30
vtraveller 4:d70e37f6c6bd 31 lcd.clear();
vtraveller 4:d70e37f6c6bd 32 lcd.setCursor(0,0);
vtraveller 4:d70e37f6c6bd 33
vtraveller 4:d70e37f6c6bd 34 if (buttons & BUTTON_UP)
vtraveller 4:d70e37f6c6bd 35 {
vtraveller 4:d70e37f6c6bd 36 pc.printf("UP ");
vtraveller 4:d70e37f6c6bd 37
vtraveller 4:d70e37f6c6bd 38 lcd.printf("UP ");
vtraveller 4:d70e37f6c6bd 39 }
vtraveller 4:d70e37f6c6bd 40
vtraveller 4:d70e37f6c6bd 41 if (buttons & BUTTON_DOWN)
vtraveller 4:d70e37f6c6bd 42 {
vtraveller 4:d70e37f6c6bd 43 pc.printf("DOWN ");
vtraveller 4:d70e37f6c6bd 44
vtraveller 4:d70e37f6c6bd 45 lcd.printf("DOWN ");
vtraveller 4:d70e37f6c6bd 46 }
vtraveller 4:d70e37f6c6bd 47
vtraveller 4:d70e37f6c6bd 48 if (buttons & BUTTON_LEFT)
vtraveller 4:d70e37f6c6bd 49 {
vtraveller 4:d70e37f6c6bd 50 pc.printf("LEFT ");
vtraveller 4:d70e37f6c6bd 51
vtraveller 4:d70e37f6c6bd 52 lcd.printf("LEFT ");
vtraveller 4:d70e37f6c6bd 53 }
vtraveller 4:d70e37f6c6bd 54
vtraveller 4:d70e37f6c6bd 55 if (buttons & BUTTON_RIGHT)
vtraveller 4:d70e37f6c6bd 56 {
vtraveller 4:d70e37f6c6bd 57 pc.printf("RIGHT ");
vtraveller 4:d70e37f6c6bd 58
vtraveller 4:d70e37f6c6bd 59 lcd.printf("RIGHT ");
vtraveller 4:d70e37f6c6bd 60 }
vtraveller 4:d70e37f6c6bd 61
vtraveller 4:d70e37f6c6bd 62 if (buttons & BUTTON_SELECT)
vtraveller 4:d70e37f6c6bd 63 {
vtraveller 4:d70e37f6c6bd 64 pc.printf("SELECT ");
vtraveller 4:d70e37f6c6bd 65
vtraveller 4:d70e37f6c6bd 66 lcd.printf("SELECT ");
vtraveller 4:d70e37f6c6bd 67 }
vtraveller 4:d70e37f6c6bd 68 }
vtraveller 7:d087e901b74b 69 else
vtraveller 7:d087e901b74b 70 {
vtraveller 7:d087e901b74b 71 lcd.setCursor(0,1);
vtraveller 7:d087e901b74b 72 lcd.printf("Waiting... %i",count++);
vtraveller 7:d087e901b74b 73 }
vtraveller 3:ed09f95739df 74 }
vtraveller 3:ed09f95739df 75
vtraveller 3:ed09f95739df 76 int main()
vtraveller 3:ed09f95739df 77 {
vtraveller 6:a6be2aede8f2 78 pc.printf("\n\rInitialise LCD\n\r");
vtraveller 6:a6be2aede8f2 79 lcd.begin(16,2);
vtraveller 7:d087e901b74b 80
vtraveller 7:d087e901b74b 81 lcd.printf("AdaFruit RGB LCD Shield");
vtraveller 5:6c9ee7e3a20c 82 pc.printf("\n\rEntering key tracking loop\n\r");
vtraveller 4:d70e37f6c6bd 83 while (true)
vtraveller 4:d70e37f6c6bd 84 {
vtraveller 4:d70e37f6c6bd 85 loop();
vtraveller 4:d70e37f6c6bd 86 wait(0.2);
vtraveller 5:6c9ee7e3a20c 87 }
wim 0:88d87b1c1f8b 88 }