HW5.2

Dependencies:   blink_kl46z_button_nowait mbed

Fork of blink_kl46z_button_nowait by Stanley Cohen

Revision:
2:b49e5adf84df
Parent:
1:2688f68df85d
Child:
3:7e9670be412e
--- a/main.cpp	Mon Sep 07 17:30:09 2015 +0000
+++ b/main.cpp	Mon Sep 14 14:14:04 2015 +0000
@@ -1,4 +1,6 @@
 #include "mbed.h"
+#include "SLCD.h"
+
 #define LEDON false
 #define LEDOFF true
 #define BUTDOWN false
@@ -8,9 +10,16 @@
 #define RBUT PTC3
 #define BLINKTIME 0.3
 #define REDMESS "RED LED is ON\r\n" // adding  DR and line feed for terminal line advance
-#define PROGNAME "blink_kl46z_buttton v1\r\n"
+#define LCDCHARLEN 10
+#define NUMMESS 2
+#define LRED "RED"
+#define LGREEN "GREN"
+#define PRED "RED\r\n"
+#define PGREEN "GREEN\r\n"
+#define PROGNAME "blink_kl46z_buttton LCD v1\r\n"
 
 // slightly more interesting blinky 140814 sc
+SLCD slcd; //define LCD display
 
 
 int ledState = LEDON;
@@ -19,17 +28,29 @@
 DigitalOut LEDs[NUMBUTS] = {LED_GREEN, LED_RED};
 Serial pc(USBTX, USBRX);// set up USB as communicationis to Host PC via USB connectons
 
+void LCDMess(char *lMess){
+        slcd.Home();
+        slcd.clear();
+        slcd.printf(lMess);
+}
+
 // --------------------------------
 int main() {
     int i; 
     int currentLED = 0;
+    char rMess[NUMMESS][LCDCHARLEN]={LGREEN, LRED};
+    char pMess[NUMMESS][LCDCHARLEN]={PRED, PGREEN};
     pc.printf(PROGNAME);
+    
+    LCDMess(rMess[currentLED]);
+    pc.printf(pMess[currentLED]);
     while(true) {
-        for (i=0; i<NUMBUTS; i++){
+        for (i=0; i<NUMBUTS; i++){ // index will be 0 or 1
             LEDs[i] = LEDOFF;      
-            if(buttons[i] == BUTDOWN) {
-                // red LED has an index of 1 see line 17
-                if (i == 1) pc.printf(REDMESS); // this means that RED will be blinking
+            // if(buttons[i] == BUTDOWN) {
+            if(!buttons[i]) {
+                 LCDMess(rMess[i]);
+                 pc.printf(pMess[i]); // this means that RED will be blinking
                 currentLED = i;
             }
         }