Test InterruptIn without debouncing buttons. Lab 1

Dependencies:   mbed C12832

Committer:
Dariusz_Piskorowski
Date:
Sat Aug 10 22:41:30 2019 +0000
Revision:
0:a9d69c7ddfdf
Test InterruptIn without debouncing buttons Rev.1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Dariusz_Piskorowski 0:a9d69c7ddfdf 1 #include "mbed.h"
Dariusz_Piskorowski 0:a9d69c7ddfdf 2 #include "C12832.h"
Dariusz_Piskorowski 0:a9d69c7ddfdf 3
Dariusz_Piskorowski 0:a9d69c7ddfdf 4 C12832 lcd(p5, p7, p6, p8, p11); //establish communication with lcd
Dariusz_Piskorowski 0:a9d69c7ddfdf 5
Dariusz_Piskorowski 0:a9d69c7ddfdf 6 InterruptIn UP(p15); // set. digital inputs p12-16 connected to joystick
Dariusz_Piskorowski 0:a9d69c7ddfdf 7 InterruptIn DN(p12);
Dariusz_Piskorowski 0:a9d69c7ddfdf 8 InterruptIn LT(p13);
Dariusz_Piskorowski 0:a9d69c7ddfdf 9 InterruptIn RT(p16);
Dariusz_Piskorowski 0:a9d69c7ddfdf 10 InterruptIn CT(p14);
Dariusz_Piskorowski 0:a9d69c7ddfdf 11
Dariusz_Piskorowski 0:a9d69c7ddfdf 12
Dariusz_Piskorowski 0:a9d69c7ddfdf 13 int main() {
Dariusz_Piskorowski 0:a9d69c7ddfdf 14
Dariusz_Piskorowski 0:a9d69c7ddfdf 15 lcd.cls(); // clear lcd screen
Dariusz_Piskorowski 0:a9d69c7ddfdf 16 lcd.locate(0,4); // set first line and 4 place for lcd
Dariusz_Piskorowski 0:a9d69c7ddfdf 17 lcd.printf("Main loop OK"); // display control text
Dariusz_Piskorowski 0:a9d69c7ddfdf 18
Dariusz_Piskorowski 0:a9d69c7ddfdf 19
Dariusz_Piskorowski 0:a9d69c7ddfdf 20 while(1) {
Dariusz_Piskorowski 0:a9d69c7ddfdf 21 /* now we have five digital inputs, everytime when we press the joystick
Dariusz_Piskorowski 0:a9d69c7ddfdf 22 we connect apriopiate pin to 3.3V (state HIGH = 1) and we repeat
Dariusz_Piskorowski 0:a9d69c7ddfdf 23 the same sequence of code depend of chosen direction (UP, DN etc.)
Dariusz_Piskorowski 0:a9d69c7ddfdf 24 */
Dariusz_Piskorowski 0:a9d69c7ddfdf 25 if(UP==1) //check condition if UP button is pressed
Dariusz_Piskorowski 0:a9d69c7ddfdf 26 {
Dariusz_Piskorowski 0:a9d69c7ddfdf 27
Dariusz_Piskorowski 0:a9d69c7ddfdf 28 lcd.printf("UP is pressed\n\r"); //print text on lcd
Dariusz_Piskorowski 0:a9d69c7ddfdf 29
Dariusz_Piskorowski 0:a9d69c7ddfdf 30 }
Dariusz_Piskorowski 0:a9d69c7ddfdf 31 if(DN==1) //check condition if DN button is pressed
Dariusz_Piskorowski 0:a9d69c7ddfdf 32 {
Dariusz_Piskorowski 0:a9d69c7ddfdf 33
Dariusz_Piskorowski 0:a9d69c7ddfdf 34 lcd.printf("DN pressed"); //print text on lcd
Dariusz_Piskorowski 0:a9d69c7ddfdf 35
Dariusz_Piskorowski 0:a9d69c7ddfdf 36 }
Dariusz_Piskorowski 0:a9d69c7ddfdf 37 if(RT==1) //check condition if RT button is pressed
Dariusz_Piskorowski 0:a9d69c7ddfdf 38 {
Dariusz_Piskorowski 0:a9d69c7ddfdf 39
Dariusz_Piskorowski 0:a9d69c7ddfdf 40 lcd.printf("Right pressed"); //print text on lcd
Dariusz_Piskorowski 0:a9d69c7ddfdf 41
Dariusz_Piskorowski 0:a9d69c7ddfdf 42 }
Dariusz_Piskorowski 0:a9d69c7ddfdf 43 if(LT==1) //check condition if LT button is pressed
Dariusz_Piskorowski 0:a9d69c7ddfdf 44 {
Dariusz_Piskorowski 0:a9d69c7ddfdf 45
Dariusz_Piskorowski 0:a9d69c7ddfdf 46 lcd.printf("Left pressed"); //print text on lcd
Dariusz_Piskorowski 0:a9d69c7ddfdf 47
Dariusz_Piskorowski 0:a9d69c7ddfdf 48 }
Dariusz_Piskorowski 0:a9d69c7ddfdf 49 if(CT==1) //check condition if CT button is pressed
Dariusz_Piskorowski 0:a9d69c7ddfdf 50 {
Dariusz_Piskorowski 0:a9d69c7ddfdf 51
Dariusz_Piskorowski 0:a9d69c7ddfdf 52 lcd.printf("Center pressed"); //print text on lcd
Dariusz_Piskorowski 0:a9d69c7ddfdf 53
Dariusz_Piskorowski 0:a9d69c7ddfdf 54 }
Dariusz_Piskorowski 0:a9d69c7ddfdf 55 }
Dariusz_Piskorowski 0:a9d69c7ddfdf 56 }