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@1:0072ef0302ec, 2014-11-26 (annotated)
- 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?
| 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 | 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 | } |