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.
Dependencies: mbed
Fork of BoxBrovoEcho_OCt3 by
main.cpp@0:b265ed6faf6c, 2018-08-29 (annotated)
- Committer:
- rafael210
- Date:
- Wed Aug 29 17:35:19 2018 +0000
- Revision:
- 0:b265ed6faf6c
- Child:
- 1:fa78d980522c
Code with 4 independent tasks
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| rafael210 | 0:b265ed6faf6c | 1 | #include "mbed.h" |
| rafael210 | 0:b265ed6faf6c | 2 | |
| rafael210 | 0:b265ed6faf6c | 3 | Ticker scheduler1; |
| rafael210 | 0:b265ed6faf6c | 4 | Ticker scheduler2; |
| rafael210 | 0:b265ed6faf6c | 5 | Ticker scheduler3; |
| rafael210 | 0:b265ed6faf6c | 6 | Ticker scheduler4; |
| rafael210 | 0:b265ed6faf6c | 7 | |
| rafael210 | 0:b265ed6faf6c | 8 | DigitalOut THY_S(p5, 0); |
| rafael210 | 0:b265ed6faf6c | 9 | DigitalOut IGBT_G(p6, 0); |
| rafael210 | 0:b265ed6faf6c | 10 | DigitalOut led1(LED1, 0); |
| rafael210 | 0:b265ed6faf6c | 11 | DigitalOut led2(LED2, 0); |
| rafael210 | 0:b265ed6faf6c | 12 | |
| rafael210 | 0:b265ed6faf6c | 13 | |
| rafael210 | 0:b265ed6faf6c | 14 | void task1() { |
| rafael210 | 0:b265ed6faf6c | 15 | THY_S = !THY_S; |
| rafael210 | 0:b265ed6faf6c | 16 | } |
| rafael210 | 0:b265ed6faf6c | 17 | |
| rafael210 | 0:b265ed6faf6c | 18 | void task2() { |
| rafael210 | 0:b265ed6faf6c | 19 | IGBT_G = !IGBT_G; |
| rafael210 | 0:b265ed6faf6c | 20 | } |
| rafael210 | 0:b265ed6faf6c | 21 | |
| rafael210 | 0:b265ed6faf6c | 22 | void task3() { |
| rafael210 | 0:b265ed6faf6c | 23 | led1 = !led1; |
| rafael210 | 0:b265ed6faf6c | 24 | } |
| rafael210 | 0:b265ed6faf6c | 25 | |
| rafael210 | 0:b265ed6faf6c | 26 | void task4() { |
| rafael210 | 0:b265ed6faf6c | 27 | led2 = !led2; |
| rafael210 | 0:b265ed6faf6c | 28 | } |
| rafael210 | 0:b265ed6faf6c | 29 | |
| rafael210 | 0:b265ed6faf6c | 30 | int main() { |
| rafael210 | 0:b265ed6faf6c | 31 | THY_S = 0; |
| rafael210 | 0:b265ed6faf6c | 32 | IGBT_G = 0; |
| rafael210 | 0:b265ed6faf6c | 33 | led1 = 0; |
| rafael210 | 0:b265ed6faf6c | 34 | led2 = 0; |
| rafael210 | 0:b265ed6faf6c | 35 | |
| rafael210 | 0:b265ed6faf6c | 36 | scheduler1.attach(&task1, 0.005); // Four independent tasks |
| rafael210 | 0:b265ed6faf6c | 37 | scheduler2.attach(&task2, 0.05); // |
| rafael210 | 0:b265ed6faf6c | 38 | scheduler3.attach(&task3, 0.5); // |
| rafael210 | 0:b265ed6faf6c | 39 | scheduler4.attach(&task4, 1); // |
| rafael210 | 0:b265ed6faf6c | 40 | |
| rafael210 | 0:b265ed6faf6c | 41 | |
| rafael210 | 0:b265ed6faf6c | 42 | while(1) { |
| rafael210 | 0:b265ed6faf6c | 43 | |
| rafael210 | 0:b265ed6faf6c | 44 | } |
| rafael210 | 0:b265ed6faf6c | 45 | } |
