| 123456789101112131415161718192021222324252627282930 |
- #ifndef _SOFT_FLASH_
- #define _SOFT_FLASH_
- #include "stm32f4xx_hal.h"
- #include "stdbool.h"
- #define IAP_FLAG ((uint16_t)0xABCD)
- #define ERASE_FAIL ((uint32_t)1)
- #define WRITE_FAIL ((uint32_t)2)
- #define WRITE_SUCCESS ((uint32_t)3)
- /*内存分配
- stm32f405rgt6 12个扇区 4个16kb,1个64kb,7个128kb 一页2kb
- bootloader: 0 - 32kb 0x8000000 - 0x80008000
- 升级标志位: 32kb 0x80008000
- 参数信息: 48kb - 64kb 0x800C0000 - 0x80100000
- APP: 64kb - 1024kb 0x80100000 - 0x81000000
- */
- //升级标志位
- #define FLASH_UPDATE_ADDR (uint32_t)0x8008000
- //APP
- #define FLASH_APP_ADDR (uint32_t)0x8020000
- uint32_t flash_read_updata_flag(void);
- uint32_t Flash_WriteData(uint32_t ,uint16_t *,uint16_t );
- uint16_t ReadFlashNBtye(uint32_t, uint16_t *, int32_t );
- bool wirte_update_flag(void);
- #endif
|