Adrian Renner / Mbed 2 deprecated HaPo_Labor2

Dependencies:   mbed

Committer:
addyi
Date:
Wed Nov 26 09:53:44 2014 +0000
Revision:
1:0072ef0302ec
Parent:
0:76669ad2c30b
Child:
2:14b38579386c
Blinker f?r eine Seite des "Auto"

Who changed what in which revision?

UserRevisionLine numberNew contents of line
addyi 0:76669ad2c30b 1 #include "mbed.h"
addyi 0:76669ad2c30b 2
addyi 0:76669ad2c30b 3 DigitalIn b1(p8);
addyi 0:76669ad2c30b 4 DigitalIn b2(p14);
addyi 0:76669ad2c30b 5 DigitalOut led[] = {(LED1), (LED2),(LED3),(LED4)};
addyi 0:76669ad2c30b 6
addyi 0:76669ad2c30b 7
addyi 0:76669ad2c30b 8 bool shortPress =false;
addyi 0:76669ad2c30b 9 bool longPress = false;
addyi 0:76669ad2c30b 10
addyi 0:76669ad2c30b 11 int counterTime = 0;
addyi 1:0072ef0302ec 12 int counterBlink=8;
addyi 0:76669ad2c30b 13
addyi 0:76669ad2c30b 14 Ticker timeTasterTest;
addyi 0:76669ad2c30b 15 Ticker timeLedTest;
addyi 0:76669ad2c30b 16
addyi 0:76669ad2c30b 17 void tasterTest();
addyi 0:76669ad2c30b 18 void ledTest();
addyi 0:76669ad2c30b 19
addyi 0:76669ad2c30b 20 int main()
addyi 0:76669ad2c30b 21 {
addyi 1:0072ef0302ec 22 timeTasterTest.attach(&tasterTest,0.01);
addyi 1:0072ef0302ec 23 timeLedTest.attach(&ledTest,0.5);
addyi 1:0072ef0302ec 24
addyi 0:76669ad2c30b 25 while(1) {
addyi 1:0072ef0302ec 26
addyi 1:0072ef0302ec 27
addyi 0:76669ad2c30b 28 }
addyi 0:76669ad2c30b 29 }
addyi 0:76669ad2c30b 30
addyi 0:76669ad2c30b 31 void ledTest()
addyi 0:76669ad2c30b 32 {
addyi 0:76669ad2c30b 33 if(shortPress) {
addyi 1:0072ef0302ec 34 if(counterBlink>0) {
addyi 1:0072ef0302ec 35 led[3]=!led[3];
addyi 0:76669ad2c30b 36 counterBlink--;
addyi 0:76669ad2c30b 37 } else {
addyi 1:0072ef0302ec 38 led[3]=0;
addyi 1:0072ef0302ec 39 counterBlink=8;
addyi 1:0072ef0302ec 40 shortPress=false;
addyi 0:76669ad2c30b 41 }
addyi 0:76669ad2c30b 42 }
addyi 0:76669ad2c30b 43 if(longPress) {
addyi 1:0072ef0302ec 44 led[3]=!led[3];
addyi 1:0072ef0302ec 45 }
addyi 1:0072ef0302ec 46
addyi 1:0072ef0302ec 47 if(!longPress&&!shortPress) {
addyi 1:0072ef0302ec 48 led[3]=0;
addyi 0:76669ad2c30b 49 }
addyi 0:76669ad2c30b 50
addyi 0:76669ad2c30b 51 }
addyi 0:76669ad2c30b 52
addyi 0:76669ad2c30b 53 void tasterTest()
addyi 0:76669ad2c30b 54 {
addyi 0:76669ad2c30b 55 if(!b1) {
addyi 0:76669ad2c30b 56 if(counterTime<500) {
addyi 0:76669ad2c30b 57 longPress=false;
addyi 0:76669ad2c30b 58 shortPress=true;
addyi 0:76669ad2c30b 59 counterTime ++;
addyi 0:76669ad2c30b 60 } else {
addyi 0:76669ad2c30b 61 counterTime=0;
addyi 0:76669ad2c30b 62 longPress=true;
addyi 0:76669ad2c30b 63 shortPress=false;
addyi 0:76669ad2c30b 64 }
addyi 0:76669ad2c30b 65 } else {
addyi 0:76669ad2c30b 66 if(longPress) {
addyi 0:76669ad2c30b 67 counterTime=0;
addyi 0:76669ad2c30b 68 longPress=false;
addyi 0:76669ad2c30b 69 shortPress=false;
addyi 0:76669ad2c30b 70 }
addyi 0:76669ad2c30b 71 }
addyi 0:76669ad2c30b 72 }