Interrupt on user button press and timer exaple usage
main.cpp@0:2ca55e55f55d, 2019-02-20 (annotated)
- Committer:
- marcozecchini
- Date:
- Wed Feb 20 15:53:32 2019 +0000
- Revision:
- 0:2ca55e55f55d
- Child:
- 1:2e6e3436fc61
Starting from here - Marco
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| marcozecchini | 0:2ca55e55f55d | 1 | #include "mbed.h" |
| marcozecchini | 0:2ca55e55f55d | 2 | /* |
| marcozecchini | 0:2ca55e55f55d | 3 | * Button with interrupt example |
| marcozecchini | 0:2ca55e55f55d | 4 | */ |
| marcozecchini | 0:2ca55e55f55d | 5 | |
| marcozecchini | 0:2ca55e55f55d | 6 | InterruptIn mybutton(USER_BUTTON); |
| marcozecchini | 0:2ca55e55f55d | 7 | DigitalOut myled(LED1); |
| marcozecchini | 0:2ca55e55f55d | 8 | |
| marcozecchini | 0:2ca55e55f55d | 9 | float delay = 1.0; // 1 sec |
| marcozecchini | 0:2ca55e55f55d | 10 | |
| marcozecchini | 0:2ca55e55f55d | 11 | void pressed() |
| marcozecchini | 0:2ca55e55f55d | 12 | { |
| marcozecchini | 0:2ca55e55f55d | 13 | if (delay == 1.0) |
| marcozecchini | 0:2ca55e55f55d | 14 | delay = 0.2; // 200 ms |
| marcozecchini | 0:2ca55e55f55d | 15 | else |
| marcozecchini | 0:2ca55e55f55d | 16 | delay = 1.0; // 1 sec |
| marcozecchini | 0:2ca55e55f55d | 17 | } |
| marcozecchini | 0:2ca55e55f55d | 18 | |
| marcozecchini | 0:2ca55e55f55d | 19 | int main() |
| marcozecchini | 0:2ca55e55f55d | 20 | { |
| marcozecchini | 0:2ca55e55f55d | 21 | mybutton.fall(&pressed); |
| marcozecchini | 0:2ca55e55f55d | 22 | while (1) { |
| marcozecchini | 0:2ca55e55f55d | 23 | myled = !myled; |
| marcozecchini | 0:2ca55e55f55d | 24 | wait(delay); |
| marcozecchini | 0:2ca55e55f55d | 25 | } |
| marcozecchini | 0:2ca55e55f55d | 26 | } |