![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
IT Tralee Life Long Learning 2020 Instrumentation, Monitoring and Control Module Laboratory Session
LAB_2.3.1.cpp
- Committer:
- alejandromontes
- Date:
- 2020-07-27
- Revision:
- 0:d13a1b0d344f
File content as of revision 0:d13a1b0d344f:
#include "mbed.h" #include "C12832.h" InterruptIn joystickcenter(p14); InterruptIn button(p9); DigitalOut led(LED1); DigitalOut flash(LED4); C12832 lcd(p5, p7, p6, p8, p11); int x; Timer debounce; float t=3000.0; void flip() { led = !led; // toggles the led when the joystick button is pressed. debounce.start(); // starts the timer the first time that the flip function is triggered. if (debounce.read_ms()>=t){ // compares the timer value to t x=1; // variable x set to 1 if the timer condition is met debounce.reset(); // reset the timer if the condition is met. } } int main() { joystickcenter.rise(&flip); // attach the function address to the rising edge button.mode(PullUp); // With this, no external pullup resistor needed button.rise(&flip); // attach the function address to the rising edge while(1) { // wait around, interrupts will interrupt this! flash = !flash; // turns LED4 on if off, off if on wait(0.25); // the instruction to wait for a quarter-second if(x==1){ // Check if the variable has been set and if so displays a message on the LCD lcd.locate(0,10); lcd.printf("Varialble SET!"); wait(0.5); lcd.cls(); //Clears out the LCD x=0; //Set the variable back to 0 } } }