STM32G474xx HAL用户手册
定义 | 函数 | 变量
stm32g4xx_hal_flash.c文件参考

FLASH HAL模块驱动程序。此文件提供固件函数,用于管理内部FLASH存储器的以下功能:+程序操作函数+存储器控制函数+外设错误函数。 更多...

#include "stm32g4xx_hal.h"

转到此文件的源代码。

定义

#define FLASH_NB_DOUBLE_WORDS_IN_ROW   32

函数

static void FLASH_Program_DoubleWord (uint32_t Address, uint64_t Data)
 在指定地址编程双字(64位)。
static void FLASH_Program_Fast (uint32_t Address, uint32_t DataAddress)
 在指定地址快速编程行双字(64位)。
HAL_StatusTypeDef HAL_FLASH_Program (uint32_t TypeProgram, uint32_t Address, uint64_t Data)
 在指定地址编程双字或快速编程一行。
HAL_StatusTypeDef HAL_FLASH_Program_IT (uint32_t TypeProgram, uint32_t Address, uint64_t Data)
 在指定地址带中断使能的编程双字或快速编程一行。
void HAL_FLASH_IRQHandler (void)
 处理FLASH中断请求。
__weak void HAL_FLASH_EndOfOperationCallback (uint32_t ReturnValue)
 FLASH操作完成中断回调。
__weak void HAL_FLASH_OperationErrorCallback (uint32_t ReturnValue)
 FLASH操作错误中断回调。
HAL_StatusTypeDef HAL_FLASH_Unlock (void)
 解锁FLASH控制寄存器访问。
HAL_StatusTypeDef HAL_FLASH_Lock (void)
 锁定FLASH控制寄存器访问。
HAL_StatusTypeDef HAL_FLASH_OB_Unlock (void)
 解锁FLASH选项字节寄存器访问。
HAL_StatusTypeDef HAL_FLASH_OB_Lock (void)
 锁定FLASH选项字节寄存器访问。
HAL_StatusTypeDef HAL_FLASH_OB_Launch (void)
 启动选项字节加载。
uint32_t HAL_FLASH_GetError (void)
 获取特定的FLASH错误标志。
HAL_StatusTypeDef FLASH_WaitForLastOperation (uint32_t Timeout)
 等待FLASH操作完成。

变量

FLASH_ProcessTypeDef pFlash
 用于中断下程序/擦除扇区的变量。

详细说明

FLASH HAL模块驱动程序。此文件提供固件函数,用于管理内部FLASH存储器的以下功能:+程序操作函数+存储器控制函数+外设错误函数。

作者:
MCD应用团队
  ==============================================================================
                        ##### FLASH外设特性 #####
  ==============================================================================

  [..] Flash存储器接口管理CPU AHB I-Code和D-Code对Flash存储器的访问。
       它实现Flash存储器的擦除和编程操作,以及读写保护机制。

  [..] Flash存储器接口通过指令预取和缓存行系统加速代码执行。

  [..] FLASH主要特性:
      (+) Flash存储器读操作
      (+) Flash存储器编程/擦除操作
      (+) 读/写保护
      (+) 选项字节编程
      (+) I-Code预取
      (+) I-Code上32条4*64或2*128位的缓存行
      (+) D-Code上8条4*64或2*128位的缓存行
      (+) 错误代码纠正(ECC):Flash中的数据为72位字
          (每个双字添加8位)


                        ##### 如何使用此驱动程序 #####
  ==============================================================================
    [..]
      此驱动程序提供函数和宏来配置和编程所有STM32G4xx设备的FLASH存储器。

      (#) Flash存储器IO编程函数:
           (++) 使用HAL_FLASH_Unlock()和HAL_FLASH_Lock()函数锁定和解锁FLASH接口
           (++) 编程函数:双字和快速编程(全行编程)
           (++) 编程有两种模式:
            (+++) 轮询模式使用HAL_FLASH_Program()函数
            (+++) 中断模式使用HAL_FLASH_Program_IT()函数

      (#) 中断和标志管理函数:
           (++) 通过调用HAL_FLASH_IRQHandler()处理FLASH中断
           (++) 回调函数在flash操作完成后被调用:
                HAL_FLASH_EndOfOperationCallback()在一切正常时调用,
                否则调用HAL_FLASH_OperationErrorCallback()
           (++) 通过调用HAL_GetError()获取错误标志状态

      (#) 选项字节管理函数:
           (++) 使用HAL_FLASH_OB_Unlock()和HAL_FLASH_OB_Lock()函数锁定和解锁选项字节
           (++) 使用HAL_FLASH_Launch()函数启动选项字节重新加载。
                在这种情况下,会生成复位

    [..]
      除了这些函数外,此驱动程序还包括一组宏,用于处理以下操作:
       (+) 设置延迟
       (+) 使能/禁用预取缓冲区
       (+) 使能/禁用指令缓存和数据缓存
       (+) 复位指令缓存和数据缓存
       (+) 在低功耗运行和睡眠模式下使能/禁用Flash断电
       (+) 使能/禁用Flash中断
       (+) 监控Flash标志状态

  
注意:

版权所有(c) 2019 STMicroelectronics。保留所有权利。

本软件根据LICENSE文件中规定的条款获得许可,该文件位于本软件组件的根目录中。如果没有随本软件提供LICENSE文件,则按原样提供。

定义于文件stm32g4xx_hal_flash.c中。