Add to 11U68 11E68
Dependencies: DirectoryList MODSERIAL mbed
Fork of ika_shouyu_poppoyaki by
Diff: main.cpp
- Revision:
- 16:cac2348cfcfb
- Parent:
- 15:051ca36cc64b
- Child:
- 17:339f40a14f67
--- a/main.cpp Wed Aug 28 12:07:47 2013 +0000 +++ b/main.cpp Mon Sep 09 11:42:06 2013 +0000 @@ -28,16 +28,20 @@ DigitalOut reset_pin( p26 ); DigitalOut isp_pin( p25 ); Serial target ( p28, p27 ); +Serial pc ( USBTX,USBRX ); LocalFileSystem local( "local" ); +Ticker success; #define ENTER_TO_ISP_MODE 0 #define NO_ISP_MODE 1 #define STR_BUFF_SIZE 64 #define SOURCE_FILE "/local/bin" -#define BAUD_RATE 115200 -//#define BAUD_RATE 57600 -//#define BAUD_RATE 9600 +#define ISP_BAUD_RATE 115200 +//#define ISP_BAUD_RATE 57600 +//#define ISP_BAUD_RATE 9600 + +#define TARGET_OPERATION_BAUD_RATE 9600 int error_state = 0; @@ -59,6 +63,7 @@ void put_string( char *s ); void put_binary( char *b, int size ); void get_string( char *s ); +void success_indicator(); #pragma diag_suppress 1293 // surpressing a warning message of "assignment in condition" ;) @@ -74,7 +79,7 @@ printf( "\r\n\r\n\r\nmbed ISP program : programming LPC device from mbed\r\n" ); - target.baud( BAUD_RATE ); + target.baud( ISP_BAUD_RATE ); reset_target( ENTER_TO_ISP_MODE ); @@ -130,17 +135,28 @@ "** The data has been written successflly :)" ); -//#define AUTO_PROGRAM_START +#define AUTO_PROGRAM_START #ifdef AUTO_PROGRAM_START + target.baud( TARGET_OPERATION_BAUD_RATE ); + reset_target( NO_ISP_MODE ); - printf( " ** The program in flash has been started!!\r\n\r\n" ); + printf( " ** The program in flash has been started!!\r\n" ); #endif - int i = 0; + printf( " (now the mbed is working in \"serial through mode\")\r\n\r\n" ); + + success.attach( &success_indicator, 0.1 ); + + while (1) { - while ( 1 ) { - leds = 0x1 << (i++ & 0x3); - wait( 0.1 ); + if ( pc.readable() ) { + target.putc( pc.getc() ); + } + + if ( target.readable() ) { + pc.putc( target.getc() ); + } + } } @@ -517,3 +533,11 @@ *s = '\0'; } + +void success_indicator() +{ + static int i = 0; + + leds = 0x1 << (i++ & 0x3); +} +