74 lines
1.6 KiB
C
74 lines
1.6 KiB
C
#ifndef _HAL_FLASH_H_
|
|
#define _HAL_FLASH_H_
|
|
|
|
#if defined(__cplusplus)
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include "stm32f7xx_hal.h"
|
|
#include "uiot_import.h"
|
|
#define CURRENT_VERSION_START_ADDR 0x08018000
|
|
#define DOWNLOAD_FINISH_FLG_ADDR 0x08018018
|
|
#define DOWNLOAD_START_ADDR 0x08100000
|
|
|
|
|
|
#define DOWNLOAD_SUCESS 0X00
|
|
#define DOWNLOAD_FAILED 0X01
|
|
#define VERSION_BYTE_NUM 24
|
|
|
|
/**
|
|
* @brief 向FLASH地址中写入一个字节的数据
|
|
*
|
|
* @param addr FLASH地址
|
|
* @param data 要写入的一个字节的数据
|
|
* @return 0-success 其他-fail
|
|
*/
|
|
int HAL_FLASH_Write_Byte(_IN_ uint32_t addr,_IN_ uint32_t data);
|
|
|
|
/**
|
|
* @brief 擦除FLASH地址的sector
|
|
*
|
|
* @param addr FLASH sector
|
|
* @return 0-success 其他-fail
|
|
*/
|
|
int HAL_FLASH_Erase_Sector(_IN_ uint8_t sector, _IN_ uint32_t sector_num);
|
|
|
|
/**
|
|
* @brief 读FLASH地址的一个字节数据
|
|
*
|
|
* @param addr FLASH地址
|
|
* @return 当前传入地址的一个字节的数据
|
|
*/
|
|
uint8_t HAL_FLASH_Read_Byte(_IN_ uint8_t addr);
|
|
|
|
/**
|
|
* @brief 给FLASH地址上锁
|
|
*
|
|
* @param addr 无
|
|
* @return 无
|
|
*/
|
|
void HAL_FLASH_Locked(void);
|
|
|
|
/**
|
|
* @brief 给FLASH地址解锁
|
|
*
|
|
* @param addr 无
|
|
* @return 无
|
|
*/
|
|
void HAL_FLASH_Unlocked(void);
|
|
|
|
|
|
/**
|
|
* @brief 获得版本信息
|
|
*
|
|
* @param 指向版本号字符串的char型指针
|
|
* @return 无
|
|
*/
|
|
//void version_get(char * verptr);
|
|
|
|
#if defined(__cplusplus)
|
|
}
|
|
#endif
|
|
#endif /* _HAL_FLASH_H_ */
|
|
|