Template With PC USB Debug Terminal

Dependencies:   mbed-rtos mbed

Committer:
hayashiisme
Date:
Tue Jan 14 01:47:54 2014 +0000
Revision:
0:3d67f519949c
Template with PC USB Debug Terminal

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hayashiisme 0:3d67f519949c 1 #include "mbed.h"
hayashiisme 0:3d67f519949c 2 #include "rtos.h"
hayashiisme 0:3d67f519949c 3
hayashiisme 0:3d67f519949c 4 Serial pc(USBTX, USBRX);
hayashiisme 0:3d67f519949c 5 DigitalOut myled(LED4);
hayashiisme 0:3d67f519949c 6 Queue<uint32_t, 5> queue;
hayashiisme 0:3d67f519949c 7
hayashiisme 0:3d67f519949c 8
hayashiisme 0:3d67f519949c 9 void console_out(void const *args)
hayashiisme 0:3d67f519949c 10 {
hayashiisme 0:3d67f519949c 11 printf(">led thread start\r\n");
hayashiisme 0:3d67f519949c 12 int f = 1;
hayashiisme 0:3d67f519949c 13 while(f) {
hayashiisme 0:3d67f519949c 14 myled = 1;
hayashiisme 0:3d67f519949c 15 Thread::wait(500);
hayashiisme 0:3d67f519949c 16 myled = 0;
hayashiisme 0:3d67f519949c 17 Thread::wait(500);
hayashiisme 0:3d67f519949c 18 osEvent evt = queue.get(100);
hayashiisme 0:3d67f519949c 19 if(evt.status != osEventMessage) {
hayashiisme 0:3d67f519949c 20 printf(">returned %02x status\r\n", evt.status);
hayashiisme 0:3d67f519949c 21 } else {
hayashiisme 0:3d67f519949c 22 printf(">returned %d\r\n", evt.value.v);
hayashiisme 0:3d67f519949c 23 if(evt.value.v == 1) f = 0;
hayashiisme 0:3d67f519949c 24 }
hayashiisme 0:3d67f519949c 25 }
hayashiisme 0:3d67f519949c 26 printf(">led thread end.\r\n");
hayashiisme 0:3d67f519949c 27 }
hayashiisme 0:3d67f519949c 28
hayashiisme 0:3d67f519949c 29 int main(void)
hayashiisme 0:3d67f519949c 30 {
hayashiisme 0:3d67f519949c 31 pc.baud(921600);
hayashiisme 0:3d67f519949c 32 printf("\r\n==== mbed program start ====\r\n");
hayashiisme 0:3d67f519949c 33 printf("%s\r\n", __FILE__);
hayashiisme 0:3d67f519949c 34 Thread th_console_out(console_out);
hayashiisme 0:3d67f519949c 35 wait(10);
hayashiisme 0:3d67f519949c 36 queue.put((uint32_t*)1);
hayashiisme 0:3d67f519949c 37 wait(10);
hayashiisme 0:3d67f519949c 38 printf("=== mbed program end ====\r\n");
hayashiisme 0:3d67f519949c 39 exit(1);
hayashiisme 0:3d67f519949c 40 }