michael hollegha
/
ButtonEventDemo
Demonstrates the usage of the ButtonEventM0-Class
main.cpp@2:e4e11d95b4cd, 2015-01-13 (annotated)
- Committer:
- hollegha2
- Date:
- Tue Jan 13 16:04:32 2015 +0000
- Revision:
- 2:e4e11d95b4cd
- Parent:
- 0:35d70ff5c12e
- Child:
- 5:ff46a385e7ec
ADC
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
hollegha2 | 0:35d70ff5c12e | 1 | |
hollegha2 | 0:35d70ff5c12e | 2 | #include "mbed.h" |
hollegha2 | 0:35d70ff5c12e | 3 | #include "BtnEventM0.h" |
hollegha2 | 0:35d70ff5c12e | 4 | |
hollegha2 | 0:35d70ff5c12e | 5 | // LSB MSB |
hollegha2 | 0:35d70ff5c12e | 6 | BusOut lb(P1_13,P1_12,P1_7,P1_6,P1_4,P1_3,P1_1,P1_0,LED4,LED3,LED2,LED1); |
hollegha2 | 0:35d70ff5c12e | 7 | |
hollegha2 | 0:35d70ff5c12e | 8 | BtnEventM0 sw4(P1_16), sw2(P0_15), sw1(P0_10), sw3(P0_23); |
hollegha2 | 0:35d70ff5c12e | 9 | |
hollegha2 | 0:35d70ff5c12e | 10 | Timer t1; |
hollegha2 | 0:35d70ff5c12e | 11 | void OneLeftStep(); |
hollegha2 | 0:35d70ff5c12e | 12 | void OneRightStep(); |
hollegha2 | 0:35d70ff5c12e | 13 | void ExecuteAutoButtons(); |
hollegha2 | 0:35d70ff5c12e | 14 | |
hollegha2 | 0:35d70ff5c12e | 15 | int main(void) |
hollegha2 | 0:35d70ff5c12e | 16 | { |
hollegha2 | 0:35d70ff5c12e | 17 | lb = 1; |
hollegha2 | 0:35d70ff5c12e | 18 | sw4.Init(); |
hollegha2 | 0:35d70ff5c12e | 19 | sw2.Init(); |
hollegha2 | 0:35d70ff5c12e | 20 | sw1.Init(); |
hollegha2 | 0:35d70ff5c12e | 21 | sw3.Init(); |
hollegha2 | 0:35d70ff5c12e | 22 | t1.start(); |
hollegha2 | 0:35d70ff5c12e | 23 | |
hollegha2 | 0:35d70ff5c12e | 24 | while(1) { |
hollegha2 | 0:35d70ff5c12e | 25 | if( sw4.CheckFlag() ) |
hollegha2 | 0:35d70ff5c12e | 26 | OneRightStep(); |
hollegha2 | 0:35d70ff5c12e | 27 | if( sw3.CheckFlag() ) |
hollegha2 | 0:35d70ff5c12e | 28 | OneLeftStep(); |
hollegha2 | 0:35d70ff5c12e | 29 | if( sw1.CheckFlag() ) |
hollegha2 | 0:35d70ff5c12e | 30 | OneRightStep(); |
hollegha2 | 0:35d70ff5c12e | 31 | if( sw2.CheckFlag() ) |
hollegha2 | 0:35d70ff5c12e | 32 | OneLeftStep(); |
hollegha2 | 0:35d70ff5c12e | 33 | ExecuteAutoButtons(); |
hollegha2 | 0:35d70ff5c12e | 34 | } |
hollegha2 | 0:35d70ff5c12e | 35 | } |
hollegha2 | 0:35d70ff5c12e | 36 | |
hollegha2 | 0:35d70ff5c12e | 37 | void ExecuteAutoButtons() |
hollegha2 | 0:35d70ff5c12e | 38 | { |
hollegha2 | 0:35d70ff5c12e | 39 | /* sw1.CheckButton(); |
hollegha2 | 0:35d70ff5c12e | 40 | sw2.CheckButton(); |
hollegha2 | 0:35d70ff5c12e | 41 | sw3.CheckButton(); |
hollegha2 | 0:35d70ff5c12e | 42 | sw4.CheckButton(); */ |
hollegha2 | 0:35d70ff5c12e | 43 | } |
hollegha2 | 0:35d70ff5c12e | 44 | |
hollegha2 | 0:35d70ff5c12e | 45 | void OneLeftStep() |
hollegha2 | 0:35d70ff5c12e | 46 | { |
hollegha2 | 0:35d70ff5c12e | 47 | if( lb==2048 ) { |
hollegha2 | 0:35d70ff5c12e | 48 | lb = 1; |
hollegha2 | 0:35d70ff5c12e | 49 | return; |
hollegha2 | 0:35d70ff5c12e | 50 | } |
hollegha2 | 0:35d70ff5c12e | 51 | lb = lb << 1; |
hollegha2 | 0:35d70ff5c12e | 52 | } |
hollegha2 | 0:35d70ff5c12e | 53 | |
hollegha2 | 0:35d70ff5c12e | 54 | void OneRightStep() |
hollegha2 | 0:35d70ff5c12e | 55 | { |
hollegha2 | 0:35d70ff5c12e | 56 | if( lb==1 ) { |
hollegha2 | 0:35d70ff5c12e | 57 | lb = 2048; |
hollegha2 | 0:35d70ff5c12e | 58 | return; |
hollegha2 | 0:35d70ff5c12e | 59 | } |
hollegha2 | 0:35d70ff5c12e | 60 | lb = lb >> 1; |
hollegha2 | 0:35d70ff5c12e | 61 | } |
hollegha2 | 0:35d70ff5c12e | 62 | |
hollegha2 | 2:e4e11d95b4cd | 63 | // ADC |
hollegha2 | 0:35d70ff5c12e | 64 | |
hollegha2 | 2:e4e11d95b4cd | 65 |