Rtos API example
main.cpp
- Committer:
- marcozecchini
- Date:
- 2019-02-23
- Revision:
- 0:9fca2b23d0ba
File content as of revision 0:9fca2b23d0ba:
#include "mbed.h"
#define BUF_SIZE 10
Thread thread;
CircularBuffer<char, BUF_SIZE> buf;
int bytes = 0;
void print_string(char data_stream[] = "Thread")
{
while (!buf.full()) {
buf.push(data_stream[bytes++ % 6]);
}
}
void print_thread()
{
while (true) {
wait(1);
print_string();
}
}
int main()
{
printf("\n\n*** RTOS - CircularBuffer basic example ***\n");
thread.start(print_thread);
char data;
while (true) {
printf ("\n\rBuffer contents: ");
while (!buf.empty()) {
buf.pop(data);
printf("%c", data);
}
printf("\n");
wait(1);
}
}