Basic example showing the Queue and MemoryPool API
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, committed 2017-02-15
- Comitter:
- mbed_official
- Date:
- Wed Feb 15 13:56:50 2017 -0600
- Parent:
- 6:0cb43a362538
- Commit message:
- Revert update to mbed-os.
Changed in this revision
--- 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) {
--- a/mbed-os.lib Fri Jan 13 19:49:53 2017 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -https://github.com/ARMmbed/mbed-os/#2885c1b41e63158cb6faf5f107cd821ae06ef26c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed-rtos.lib Wed Feb 15 13:56:50 2017 -0600 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed-rtos/ \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Wed Feb 15 13:56:50 2017 -0600 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/ \ No newline at end of file