文章目录
1.Flash类型定义(两个结构体) 2.Flash常量定义(3种) 3.Flash函数(31个,FLASH分为两个区,一个是普通的存储空间,一个是选项字节OB,函数名里带OB的就是对选项字节空间的操作)
1.Flash类型定义(两个结构体)
typedef enum
{
FLASH_PROC_NONE = 0 ,
FLASH_PROC_PAGEERASE = 1 ,
FLASH_PROC_MASSERASE = 2 ,
FLASH_PROC_PROGRAMHALFWORD = 3 ,
FLASH_PROC_PROC_PROGRAMWORD = 4 ,
FLASH_PROC_PROGRAMDOUBLEWORD = 5
} FLASH_RrocedureTypeDef;
typedef struct
{
_IO FLASH_ProcessTypeDef ProcedureOnGoing;
_IO uint32_t DataRemaining;
_TO uint32_t Address;
_IO uint64_t Data;
HAL_LockTypeDef Lock;
_IO uint32_t ErrorCode;
} FLASH_ProcessTypeDef;
2.Flash常量定义(3种)
3.Flash函数(31个,FLASH分为两个区,一个是普通的存储空间,一个是选项字节OB,函数名里带OB的就是对选项字节空间的操作)
序号 函数名 功能描述 1 FLASH_PageErase 删除指定的Flash存储页 2 FLASH_Program_HalfWord 在指定的地址编程(写入)半字 3 FLASH_SetErrorCode 置位指定的Flash错误标志位 4 FLASH_WaitForLastOperation 等待一个Flash操作结束 5 HAL_FLASH_EndofOperationCallback Flash操作结束中断回调函数 6 HAL_FLASH_IRQHandler 处理中断请求函数 7 HAL_FALSH_OperationErrorCallback Flash操作错误中断回调函数 8 HAL_FLASH_Program 在指定的地址以半字、字或双字编程 9 HAL_FLASH_Program_IT 在指定的地址以半字、字或双字编程,并使能中断 10 HAL_FLASH_Lock 锁定Flash控制寄存器访问 11 HAL_FLASH_OB_Launch 启动选项字节的装载 12 HAL_FLASH_OB_Lock 解锁Flash控制寄存器访问 13 HAL_FLASH_OB_Unlock 解锁Flash控制寄存器访问 14 HAL_FLASH_Unlock 解锁Flash控制寄存器访问 15 HAL_FLASH_GetError 获取特定的Flash错误标志位 16 FLASH_MaseErase 全部擦除Flash存储器组 17 FLASH_OB_DisableWRP 禁用目标页面写保护 18 FLASH_OB_EnableWRP 对目标页面使能写保护 19 FLASH_OB_GetRDP 返回Flash写保护级别 20 FLASH_OB_GetUser 返回Flash用户选项字节的值 21 FLASH_OB_GetWRP 返回Flash写保护选项字节的值 22 FLASH_OB_ProgramData 对指定的选项字节数据地址使用半字节编程 23 FLASH_OB_RDP_LevelConfig 设置读保护级别 24 FLASH_OB_UserConfig 编程Flash用户选项字节 25 FLASH_PageErase 删除指定的Flash存储器页面 26 HAL_FLASHEx_Erase 执行块擦除或擦除指定的Flash存储器页面 27 HAL_FLASHEx_Erase_IT 执行块擦除或擦除指定的Flash存储器页面并使能中断 28 HAL_FLASHEx_OBErase 删除Flash选项字节 29 HAL_FLASHEx_OBGetConfig 获取选项字节配置 30 HAL_FLASHEx_OBGetUserData 获取选项字节用户数据 31 HAL_FLAHEx_OBProgram 编程选项字节