• 正文
  • 相关推荐
申请入驻 产业图谱

APM32F4xx Flash 模拟 EEPROM 方案整体概览与应用定位

10/26 15:03
9
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

1. 文档基础信息

本应用笔记文档编号AN1094,版本 V1.0,珠海极海半导体发布。文档以APM32F407ZE作为示例型号,讲解 APM32F4xx 系列 MCU 使用内部 Flash 实现模拟 EEPROM 的软硬件完整实现方法。

重要背景:APM32F4xx 芯片没有硬件 EEPROM 外设,需要通过软件方式,结合片内 Flash 与 RAM,模拟 EEPROM 非易失字节读写能力。

资料获取:AN1094_APM32F4xx Flash模拟EEPROM 应用笔记

2. APM32F4xx 片内 Flash 存储架构简介

APM32F4xx Flash 整体分为主存储块、信息块两大组成部分。

  1. 主存储块:存放应用程序、引导代码、常量数据,一共 12 个扇区。
    • 扇区 0‑3:每个扇区 16KB;
    • 扇区 4:64KB;
    • 扇区 5‑11:每个扇区 128KB;
    • 主存储块起始地址:0x08000000。
  2. 信息块
    • 系统存储块:存放 BootLoader 启动代码;
    • OTP 一次性可编程区域:合计 528 字节,512 字节用户数据区 +16 字节锁定区,只可写入一次,不可重复擦写;
    • 选项字节:配置 Flash 读写保护、BOR 掉电复位等级、看门狗等系统配置。

BOOT0 引脚接 GND 时,芯片从主 Flash 启动;主闪存可以同时映射到启动地址与原始物理地址访问。

3. Flash 模拟 EEPROM 方案核心概述

EEPROM 为电可擦除只读存储器,特性:非易失掉电保存,支持按字节改写,改写前不需要执行扇区整体擦除。 APM32F4xx 片内 Flash 特性:擦除操作必须以整个扇区为单位,不能够单字节擦除。软件模拟 EEPROM 的核心思路:借助 RAM 缓冲区保存扇区全部内容,修改缓冲区字节,擦除整个 Flash 扇区,再把完整缓冲区回写到 Flash,对外封装出类似 EEPROM 的字节读写接口。

文档明确扇区选型约束:

  • 扇区 0 存放上电启动程序,不可用作模拟 EEPROM;
  • 扇区 5‑11 单扇区大小 128KB,需要同等大小 RAM 做缓存,受芯片最大 RAM 限制,不适合模拟 EEPROM;
  • 可用扇区:扇区 1、扇区 2、扇区 3,单扇区均 16KB。

4. Flash 模拟 EEPROM 方案核心优势(原文复刻)

  1. 成本低:复用 MCU 内部 Flash,省去外部 EEPROM 芯片物料,节约 BOM 成本;
  2. 读写速率快:片内 Flash 访问速度高于外部 EEPROM 器件;
  3. 容量大:可以分配更大存储空间保存非易失业务数据;
  4. 抗干扰能力强:不依赖 I2C/SPI 等外部通信总线,规避外部总线电磁干扰带来通信异常。

5. 方案面向落地业务应用场景

该模拟 EEPROM 用于保存需要掉电不丢失的少量业务参数,适合 APM32F4xx 各类嵌入式设备:

  1. 工业控制器:设备标定参数、PID 参数、设备 ID、校准系数;
  2. 仪器仪表:配置项、报警阈值、运行统计记录;
  3. 消费类嵌入式设备:用户配置、工作模式、计数记录;
  4. 电机控制设备:驱动器参数保存。

提示:本方案是软件模拟实现,和真实硬件 EEPROM 存在擦写寿命、运行 RAM 开销方面差异。

相关推荐