Basic example showing the Queue and MemoryPool API

Dependencies:   mbed-rtos mbed

mbed 2 and mbed OS 5

This is an mbed 2 example. mbed OS 5 has integrated the mbed library with mbed-rtos. For an mbed-os example, please see:

Import programrtos_queue

queue example

Revision:
7:72d8f12e161f
Parent:
6:0cb43a362538
--- a/main.cpp	Fri Jan 13 19:49:53 2017 +0000
+++ b/main.cpp	Wed Feb 15 13:56:50 2017 -0600
@@ -1,4 +1,5 @@
 #include "mbed.h"
+#include "rtos.h"
 
 typedef struct {
     float    voltage;   /* AD result of measured voltage */
@@ -8,7 +9,6 @@
 
 MemoryPool<message_t, 16> mpool;
 Queue<message_t, 16> queue;
-Thread thread;
 
 /* Send Thread */
 void send_thread (void) {
@@ -20,11 +20,12 @@
         message->current = (i * 0.1) * 11;
         message->counter = i;
         queue.put(message);
-        wait(1);
+        Thread::wait(1000);
     }
 }
 
 int main (void) {
+    Thread thread;
     thread.start(callback(send_thread));
     
     while (true) {