1、FMC(闪存控制器)
GD32F4xx MCU的片上闪存控制通过FMC实现的。
主要特性:
- 高达3072KB字节的片上闪存,使用了2片闪存:前1024KB 在第0片闪存中(bank 0),后续容量(2048KB)在第1片闪存中(bank1)中。
- 支持32位整字、16位半字、字节编程,支持扇区擦除和整片擦除操作
- 闪存结构: 整个闪存空间被分为 8个16KB扇区、2个64KB扇区、14个128KB扇区、4个256KB扇区。
GD32F4xx 仅支持扇区和整片擦除,闪存空间中没有分页,不支持页擦除操作。设计使用时要注意。
2、读写操作
2.1 FMC标准库及FMC解锁
FMC操作相关的标准库接口都在gd32f4xx_fmc.c 和 gd32f4xx_fmc.h中。FMC的控制寄存器复位后是上锁的,在进行 写入、擦除操作时都需要先解锁,操作完成后再上锁。
API接口:
void fmc_unlock