]> git.gir.st - tmk_keyboard.git/blob - tool/mbed/mbed-sdk/libraries/tests/rtos/cmsis/isr/main.cpp
Squashed 'tmk_core/' changes from 7967731..b9e0ea0
[tmk_keyboard.git] / tool / mbed / mbed-sdk / libraries / tests / rtos / cmsis / isr / main.cpp
1 #include "mbed.h"
2 #include "rtos.h"
3
4 Queue<uint32_t, 5> queue;
5
6 DigitalOut myled(LED1);
7
8 void queue_isr() {
9 queue.put((uint32_t*)2);
10 myled = !myled;
11 }
12
13 void queue_thread(void const *argument) {
14 while (true) {
15 queue.put((uint32_t*)1);
16 Thread::wait(1000);
17 }
18 }
19
20 int main (void) {
21 Thread thread(queue_thread);
22
23 Ticker ticker;
24 ticker.attach(queue_isr, 1.0);
25
26 while (true) {
27 osEvent evt = queue.get();
28 if (evt.status != osEventMessage) {
29 printf("queue->get() returned %02x status\n\r", evt.status);
30 } else {
31 printf("queue->get() returned %d\n\r", evt.value.v);
32 }
33 }
34 }
Imprint / Impressum