]> git.gir.st - tmk_keyboard.git/blob - tmk_core/tool/mbed/mbed-sdk/libraries/tests/rtos/cmsis/timer/main.cpp
Merge commit '5a0132f1c1c9a14fd2941f0a5e29bbf5e31da20c' into master-core-pull
[tmk_keyboard.git] / tmk_core / tool / mbed / mbed-sdk / libraries / tests / rtos / cmsis / timer / main.cpp
1 #include "mbed.h"
2 #include "cmsis_os.h"
3
4 DigitalOut LEDs[4] = {
5 DigitalOut(LED1), DigitalOut(LED2), DigitalOut(LED3), DigitalOut(LED4)
6 };
7
8 void blink(void const *n) {
9 LEDs[(int)n] = !LEDs[(int)n];
10 }
11
12 osTimerDef(blink_0, blink);
13 osTimerDef(blink_1, blink);
14 osTimerDef(blink_2, blink);
15 osTimerDef(blink_3, blink);
16
17 int main(void) {
18 osTimerId timer_0 = osTimerCreate(osTimer(blink_0), osTimerPeriodic, (void *)0);
19 osTimerId timer_1 = osTimerCreate(osTimer(blink_1), osTimerPeriodic, (void *)1);
20 osTimerId timer_2 = osTimerCreate(osTimer(blink_2), osTimerPeriodic, (void *)2);
21 osTimerId timer_3 = osTimerCreate(osTimer(blink_3), osTimerPeriodic, (void *)3);
22
23 osTimerStart(timer_0, 2000);
24 osTimerStart(timer_1, 1000);
25 osTimerStart(timer_2, 500);
26 osTimerStart(timer_3, 250);
27
28 osDelay(osWaitForever);
29 }
Imprint / Impressum