working button incrementer

Dependencies:   mbed

Committer:
andrewbw01
Date:
Wed Feb 10 15:31:26 2021 +0000
Revision:
0:bfc9617c596c
Child:
1:ac916e153bc4
working polling method

Who changed what in which revision?

UserRevisionLine numberNew contents of line
andrewbw01 0:bfc9617c596c 1 #include "mbed.h"
andrewbw01 0:bfc9617c596c 2
andrewbw01 0:bfc9617c596c 3 DigitalIn button_up(p14);
andrewbw01 0:bfc9617c596c 4 DigitalIn button_down(p15);
andrewbw01 0:bfc9617c596c 5
andrewbw01 0:bfc9617c596c 6 BusOut LED_Disp(p7,p11,p9,p8,p5,p6,p10,p12);
andrewbw01 0:bfc9617c596c 7
andrewbw01 0:bfc9617c596c 8 void DisplayNumber(int);
andrewbw01 0:bfc9617c596c 9
andrewbw01 0:bfc9617c596c 10 int main()
andrewbw01 0:bfc9617c596c 11 {
andrewbw01 0:bfc9617c596c 12 int counter = 0;
andrewbw01 0:bfc9617c596c 13
andrewbw01 0:bfc9617c596c 14 while(1)
andrewbw01 0:bfc9617c596c 15 {
andrewbw01 0:bfc9617c596c 16 if (counter>9) counter = 0;
andrewbw01 0:bfc9617c596c 17
andrewbw01 0:bfc9617c596c 18 if (counter<0) counter = 0;
andrewbw01 0:bfc9617c596c 19
andrewbw01 0:bfc9617c596c 20 DisplayNumber(counter);
andrewbw01 0:bfc9617c596c 21
andrewbw01 0:bfc9617c596c 22 if (button_up == 1)
andrewbw01 0:bfc9617c596c 23 {
andrewbw01 0:bfc9617c596c 24 counter++;
andrewbw01 0:bfc9617c596c 25
andrewbw01 0:bfc9617c596c 26 wait(0.2);
andrewbw01 0:bfc9617c596c 27
andrewbw01 0:bfc9617c596c 28 while(button_up==1)
andrewbw01 0:bfc9617c596c 29 {}
andrewbw01 0:bfc9617c596c 30 }
andrewbw01 0:bfc9617c596c 31
andrewbw01 0:bfc9617c596c 32 if (button_down == 1)
andrewbw01 0:bfc9617c596c 33 {
andrewbw01 0:bfc9617c596c 34 counter--;
andrewbw01 0:bfc9617c596c 35
andrewbw01 0:bfc9617c596c 36 wait(0.2);
andrewbw01 0:bfc9617c596c 37
andrewbw01 0:bfc9617c596c 38 while(button_down==1)
andrewbw01 0:bfc9617c596c 39 {}
andrewbw01 0:bfc9617c596c 40 }
andrewbw01 0:bfc9617c596c 41 }
andrewbw01 0:bfc9617c596c 42 }
andrewbw01 0:bfc9617c596c 43
andrewbw01 0:bfc9617c596c 44 void DisplayNumber(int num)
andrewbw01 0:bfc9617c596c 45 {
andrewbw01 0:bfc9617c596c 46 switch(num)
andrewbw01 0:bfc9617c596c 47 {
andrewbw01 0:bfc9617c596c 48 case 0:
andrewbw01 0:bfc9617c596c 49 LED_Disp = ~0x3F;
andrewbw01 0:bfc9617c596c 50 break;
andrewbw01 0:bfc9617c596c 51 case 1:
andrewbw01 0:bfc9617c596c 52 LED_Disp = ~0x06;
andrewbw01 0:bfc9617c596c 53 break;
andrewbw01 0:bfc9617c596c 54 case 2:
andrewbw01 0:bfc9617c596c 55 LED_Disp = ~0x5B;
andrewbw01 0:bfc9617c596c 56 break;
andrewbw01 0:bfc9617c596c 57 case 3:
andrewbw01 0:bfc9617c596c 58 LED_Disp = ~0x4F;
andrewbw01 0:bfc9617c596c 59 break;
andrewbw01 0:bfc9617c596c 60 case 4:
andrewbw01 0:bfc9617c596c 61 LED_Disp = ~0x66;
andrewbw01 0:bfc9617c596c 62 break;
andrewbw01 0:bfc9617c596c 63 case 5:
andrewbw01 0:bfc9617c596c 64 LED_Disp = ~0x6D;
andrewbw01 0:bfc9617c596c 65 break;
andrewbw01 0:bfc9617c596c 66 case 6:
andrewbw01 0:bfc9617c596c 67 LED_Disp = ~0x7D;
andrewbw01 0:bfc9617c596c 68 break;
andrewbw01 0:bfc9617c596c 69 case 7:
andrewbw01 0:bfc9617c596c 70 LED_Disp = ~0x07;
andrewbw01 0:bfc9617c596c 71 break;
andrewbw01 0:bfc9617c596c 72 case 8:
andrewbw01 0:bfc9617c596c 73 LED_Disp = ~0x7F;
andrewbw01 0:bfc9617c596c 74 break;
andrewbw01 0:bfc9617c596c 75 case 9:
andrewbw01 0:bfc9617c596c 76 LED_Disp = ~0x67;
andrewbw01 0:bfc9617c596c 77 break;
andrewbw01 0:bfc9617c596c 78 }
andrewbw01 0:bfc9617c596c 79 }
andrewbw01 0:bfc9617c596c 80
andrewbw01 0:bfc9617c596c 81