Code to load a LPC1114 over tx/rx. I have only tested with a 1114 chip but it should work with other LPC uControllers
Dependencies: DirectoryList MODSERIAL mbed
Fork of ika_shouyu_poppoyaki by
Diff: target_handling.cpp
- Revision:
- 28:689c3880e0e4
- Parent:
- 26:a63e73885b21
- Child:
- 35:0b434ef4af49
diff -r 2b5c1eb39bb5 -r 689c3880e0e4 target_handling.cpp --- a/target_handling.cpp Thu Sep 19 01:08:20 2013 +0000 +++ b/target_handling.cpp Fri Sep 20 00:40:08 2013 +0000 @@ -12,31 +12,38 @@ target_param *tpp; char str_buf0[ STR_BUFF_SIZE ]; char str_buf1[ STR_BUFF_SIZE ]; + int retry_count = 3; set_target_baud_rate( baud_date ); - - reset_target( ENTER_TO_ISP_MODE ); - - try_and_check( "?", "Synchronized", 0 ); - + + while ( retry_count-- ) { + reset_target( ENTER_TO_ISP_MODE ); + + if ( !try_and_check( "?", "Synchronized", 0 ) ) + break; + } + + if ( !retry_count ) + return ( NULL ); + try_and_check2( "Synchronized\r\n", "OK", 0 ); try_and_check2( "12000\r\n", "OK", 0 ); try_and_check2( "U 23130\r\n", "0", 0 ); try_and_check2( "A 0\r\n", "0", 0 ); - + try_and_check( "K\r\n", "0", 0 ); get_string( str_buf0 ); get_string( str_buf1 ); - + printf( " result of \"K\" = %s %s\r\n", str_buf0, str_buf1 ); - + try_and_check( "J\r\n", "0", 0 ); get_string( str_buf0 ); - + printf( " result of \"J\" = %s\r\n", str_buf0 ); - + tpp = find_target_param( str_buf0 ); - + return ( tpp ); } @@ -46,10 +53,10 @@ reset_pin = 1; isp_pin = isp_pin_state; wait_ms( 100 ); - + reset_pin = 0; wait_ms( 100 ); - + reset_pin = 1; wait_ms( 100 ); }