Rtos API example

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "test_env.h"
00003 
00004 int main() {
00005     Serial *pc = new Serial(USBTX, USBRX);
00006 
00007     MBED_HOSTTEST_TIMEOUT(20);
00008     MBED_HOSTTEST_SELECT(serial_nc_rx_auto);
00009     MBED_HOSTTEST_DESCRIPTION(Serial NC RX);
00010     MBED_HOSTTEST_START("MBED_37");
00011 
00012     char c = pc->getc();
00013 
00014 
00015     // This should be true, sync the start of test
00016     if (c == 'S') {
00017         pc->printf("RX OK - Start NC test\r\n");
00018         wait(0.25);  // wait for characters to finish transmitting
00019 
00020         // disconnect TX and  get char
00021         delete pc;
00022         pc = new Serial(NC, USBRX);
00023         c = pc->getc();
00024         if (c == 'E') {
00025             // ok disconnect Rx and answer to host
00026             delete pc;
00027             pc = new Serial(USBTX, NC);
00028             pc->printf("RX OK - Expected\r\n");
00029             wait(0.25);  // wait for characters to finish transmitting
00030 
00031             c = pc->getc();
00032             // This should be false/not get here
00033             if (c == 'U') {
00034                 pc->printf("RX OK - Unexpected\r\n");
00035                 wait(0.25);  // wait for characters to finish transmitting
00036             }
00037         }
00038         delete pc;
00039     }
00040 
00041     while (1) {
00042     }
00043 }