Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@2:14b38579386c, 2014-11-26 (annotated)
- Committer:
- addyi
- Date:
- Wed Nov 26 10:28:31 2014 +0000
- Revision:
- 2:14b38579386c
- Parent:
- 1:0072ef0302ec
- Child:
- 3:2457871851db
BugFix Blinkanzahl
Who changed what in which revision?
| User | Revision | Line number | New 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 | 2:14b38579386c | 12 | int counterBlink=6; | 
| 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 | 2:14b38579386c | 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 | 2:14b38579386c | 39 | counterBlink=6; | 
| 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 | 2:14b38579386c | 47 | |
| addyi | 0:76669ad2c30b | 48 | |
| addyi | 0:76669ad2c30b | 49 | } | 
| addyi | 0:76669ad2c30b | 50 | |
| addyi | 0:76669ad2c30b | 51 | void tasterTest() | 
| addyi | 0:76669ad2c30b | 52 | { | 
| addyi | 0:76669ad2c30b | 53 | if(!b1) { | 
| addyi | 0:76669ad2c30b | 54 | if(counterTime<500) { | 
| addyi | 0:76669ad2c30b | 55 | longPress=false; | 
| addyi | 0:76669ad2c30b | 56 | shortPress=true; | 
| addyi | 0:76669ad2c30b | 57 | counterTime ++; | 
| addyi | 0:76669ad2c30b | 58 | } else { | 
| addyi | 0:76669ad2c30b | 59 | counterTime=0; | 
| addyi | 0:76669ad2c30b | 60 | longPress=true; | 
| addyi | 0:76669ad2c30b | 61 | shortPress=false; | 
| addyi | 0:76669ad2c30b | 62 | } | 
| addyi | 0:76669ad2c30b | 63 | } else { | 
| addyi | 0:76669ad2c30b | 64 | if(longPress) { | 
| addyi | 0:76669ad2c30b | 65 | counterTime=0; | 
| addyi | 0:76669ad2c30b | 66 | longPress=false; | 
| addyi | 0:76669ad2c30b | 67 | shortPress=false; | 
| addyi | 0:76669ad2c30b | 68 | } | 
| addyi | 0:76669ad2c30b | 69 | } | 
| addyi | 0:76669ad2c30b | 70 | } |