WXK
2025-04-17 8a2a686ae7a102b628f0a2b6c63b73b3f5ce573b
keil/include/src/OTA.c
@@ -26,8 +26,8 @@
 *******************************************************************************/
#define MAX_REQUEST_SIZE                    (5 * 1024)
#define APP2_ADRESS 0x0402f000
#define APP_SIZE 0x04080000-APP2_ADRESS
//#define APP_SIZE 0x04080000-APP2_ADRESS
#define APP_CONFIG_APPLICATION_SIZE                         0x19000          //4K对齐
/*******************************************************************************
 *                             Type Definition                                 *
 *******************************************************************************/
@@ -191,8 +191,9 @@
                    result1=flash_open(FLASH_ID0,NULL);
                    if(!result1) 
                    {
                    flash_erase(FLASH_ID0, APP_CONFIG_IAPFLAG_MAP, 2);//擦除APPFLAG
                    flash_write_nbytes(FLASH_ID0, APP_CONFIG_IAPFLAG_MAP, (uint8_t*)&tmp, sizeof(tmp));
    flash_erase(FLASH_ID0, APP_CONFIG_IAPFLAG_SECTOR_ADDR, FLASH_SECTOR_SIZE);//擦除APPFLAG
    flash_write_nbytes(FLASH_ID0, APP_CONFIG_IAPFLAG_MAP, (uint8_t*)&tmp, sizeof(tmp));
    flash_erase(FLASH_ID0, APP_CONFIG_IAP_PARAM_MAP, FLASH_SECTOR_SIZE);//擦除APPFLAG
                    }
                    __enable_irq();
                    delay_us(1000000);
@@ -243,9 +244,9 @@
    result1=flash_open(FLASH_ID0,NULL);
    if(!result1) 
    {
    flash_erase(FLASH_ID0, APP_CONFIG_IAPFLAG_MAP, 2);//擦除APPFLAG
    flash_erase(FLASH_ID0, APP_CONFIG_IAPFLAG_SECTOR_ADDR, FLASH_SECTOR_SIZE);//擦除APPFLAG
    flash_write_nbytes(FLASH_ID0, APP_CONFIG_IAPFLAG_MAP, (uint8_t*)&tmp, sizeof(tmp));
    flash_erase(FLASH_ID0, APP_CONFIG_IAP_PARAM_MAP, 256);//擦除APPFLAG
    flash_erase(FLASH_ID0, APP_CONFIG_IAP_PARAM_MAP, FLASH_SECTOR_SIZE);//擦除APPFLAG
    }
    __enable_irq();
    delay_us(1000000);
@@ -336,7 +337,7 @@
    SPIFlash_Erase(SPI_FLASH_ID_0, APP_CONFIG_APP_DOWN_LOAD_SPIFLASH_ADDRESS,
            APP_CONFIG_APP_DOWN_LOAD_SPIFLASH_SIZE, SPI_FLASH_SECTOR_ERASE_MODE_64K);
#else
    flash_erase(FLASH_ID0,APP2_ADRESS,APP_SIZE);
    flash_erase(FLASH_ID0,APP2_ADRESS,APP_CONFIG_APPLICATION_SIZE);
#endif
    /* 请求升级文件长度 */
    if(OTA_RequestFileLen() != HIDO_OK)