Mirjam Bos / Mbed 2 deprecated Exercise3_Tickerandmodserial

Dependencies:   MODSERIAL mbed

main.cpp

Committer:
Mirjam
Date:
2018-09-11
Revision:
1:b483225a5411
Parent:
0:9ac802a0d2d9
Child:
2:51248529975d

File content as of revision 1:b483225a5411:

#include "mbed.h"
#include "MODSERIAL.h"
MODSERIAL pc(USBTX, USBRX);\

// Make a BlinkLEd function using Ticker
//Wait for a character to arrive pc.getc() in the main loop,
//if character == ‘r’  blink red LED
//if character == ‘b’  blink blue LED
//if character == ‘g’  blink green LED


Ticker blink;                   //Maak ticker aan          

//enum states {r,b,g};            //Define possible states
char currentState;            //Make variable currentState

DigitalOut ledr(LED_RED);
DigitalOut ledb(LED_BLUE);
DigitalOut ledg(LED_GREEN);

void BlinkLed(void)
{
    switch (currentState)
    {   
        case 'r':             //If the input character is r
            ledr = !ledr;
            break;
            
        case 'b':             //If the input character is b
            ledb = !ledb;
            break;
            
        case 'g':             //If the input character is g
           ledg= !ledg;    
            break; 
            
        default:
         //   pc.print("There is no input");  
            break;
    }           // End of switch
} 
        
int main()
{
    blink.attach(BlinkLed,1);       //Gaat elke seconde checken
    pc.baud(115200);                //Instelling voor pc
    
    char c;                         // Maak character c aan
    c = pc.getc();                  // Maak die gelijk aan ingevoerde character
    
    while (true) {
       currentState = c;
       BlinkLed();
    }
}