| 
 
| | 各位大佬,我现在有一块NUC029的芯片,现在想将全部的程序都放到EEPROM中去,将相当于芯片复位之后程序不会丢,开机之后依旧可以运行。不知道模仿EEPROM可不可以实现?如果可以的话,我按照例程那样的,直接将相关的的配置代码放到main()之内,while()之前行不行? 
 #define Test_data_size 8
 #define Test_page_amount 4
 
 
 int main(void)
 {
 uint32_t flash_i;
 uint8_t u8Data;
 
 int instant_sec,last_sec;
 uint8_t key;
 
 SYS_UnlockReg();
 SYS_Init();
 SYS_LockReg();
 
 /***********************************
 利用data flash模拟EEPROM
 ************************************/
 /* Test Init_EEPROM() */
 Init_EEPROM(Test_data_size, Test_page_amount);
 
 /* Test Search_Valid_Page() */
 Search_Valid_Page();
 
 /* Test Write_Data() */
 for(flash_i = 0; flash_i < 254; flash_i++)
 {
 Write_Data(flash_i%Test_data_size, flash_i%256);
 }
 
 /* Test Write_Data() contain Manage_Next_Page() */
 Write_Data(flash_i%Test_data_size, 0xFF);
 
 /* Test Read_Data() */
 Read_Data(0x7, &u8Data);
 
 /* Test Write over 20000 times */
 while(Get_Cycle_Counter() < 20000)
 {
 for(flash_i = 0; flash_i < 247; flash_i++)
 {
 Write_Data(flash_i%Test_data_size, flash_i%256);
 }
 }
 
 ...........
 
 while(1)
 {
 ......
 ......
 ......
 }
 
 }
 
 
 
 | 
 
   
 
   
 
 
 | 
 |