Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: DirectoryList MODSERIAL mbed
Fork of ika_shouyu_poppoyaki by
Diff: isp.cpp
- Revision:
- 48:99cfe3a929ea
- Parent:
- 47:e7d395119a63
--- a/isp.cpp Tue Jan 06 11:05:29 2015 +0000
+++ b/isp.cpp Thu Jan 29 10:48:57 2015 +0000
@@ -20,9 +20,10 @@
unsigned int read_crp( FILE *fp );
unsigned int crp_check( FILE *fp );
void success_indicator();
+void user_action_waiting_indicator();
-int isp_flash_write( char *file_name )
+int isp_flash_write( const char *file_name )
{
FILE *fp;
target_param *tpp;
@@ -40,6 +41,29 @@
printf( " RAM size = %10d bytes\r\n", tpp->ram_size );
printf( " flash size = %10d bytes\r\n", tpp->flash_size );
+ //
+ // If user selected "flash erase only"
+ //
+
+ if ( *file_name == 0xFF ) {
+ last_sector = find_sector( tpp->flash_size - 1, tpp );
+
+ // The file selector returns 0xFF as first character of the string
+ // if user selected "flash erase".
+
+ printf( "\r\n ==== flash erasing ====\r\n" );
+
+ if ( erase_sectors( last_sector ) )
+ return ( ERROR_AT_SECTOR_ERASE );
+
+ printf( " sectors from 0 to %d are erased. bye\r\n", last_sector );
+ exit ( 0 ); // quit from app
+ }
+
+ //
+ // Normal operation
+ //
+
printf( " opening file: \"%s\"\r\n", file_name );
if ( NULL == (fp = fopen( file_name, "rb" )) ) {
@@ -118,7 +142,7 @@
post_writing_process( tpp );
- return ( 0 );
+ return ( NO_ERROR );
}
@@ -193,7 +217,6 @@
leds = 0x1 << (i++ & 0x3);
}
-
void toggle_led( char v )
{
leds = leds ^ (0x1 << v);
