ToB企服应用市场:ToB评测及商务社交产业平台
标题:
STM32的存储结构
[打印本页]
作者:
九天猎人
时间:
2025-1-11 22:19
标题:
STM32的存储结构
STM32F103 芯片是基于 ARM Cortex-M3 内核的微控制器,它集成了多种类型的存储器,每种存储器都有其特定的作用和存储对象。以下是关于 STM32F103 中 Flash、ROM 和 SRAM 的详细介绍:
1. Flash Memory (闪存)
作用
:Flash 好坏易失性存储器(Non-volatile Memory),即使在断电后也能保持数据。
存储对象
:
程序代码
:Flash 主要用于存放用户编写的固件或应用程序代码。当 MCU 上电时,从 Flash 加载并执行这些代码。
常量数据
:如字符串表、查找表等不会更改的数据也可以存储在这里。
设置参数
:某些需要长期保存但又不常常改变的数据,比如校准值、用户设置等,可以存储在 Flash 中。
特性
:
支持读取、编程(写入)和擦除操作。
编程和擦除速度相对较慢,且有肯定的寿命限制(擦写次数有限)。
范例容量范围为 16KB 到 512KB(具体取决于型号)。
2. ROM (只读存储器)
作用
:ROM 也是一种非易失性存储器,但在 STM32F103 系列中通常指的是内部预编程的存储地区,即包罗芯片厂商提供的库函数或其他固定功能。
存储对象
:
启动代码
:一些根本的启动引导代码可能已经固化在 ROM 中。
标准外设库
:部门器件可能带有内置的标准外设驱动库,帮助开辟者快速上手开辟工作。
特性
:
不可改写,内容由制造商在出厂前烧录好。
由于现代大多数 STM32F103 型号不再配备独立的 ROM 地区,而是完全依靠于用户可编程的 Flash 来实现类似的功能,因此这里的描述适用于早期大概特定版本的 STM32F103。
3. SRAM (静态随机存取存储器)
作用
:SRAM 是易失性存储器(Volatile Memory),仅在供电期间保留数据。它是 CPU 举行高速数据交换的地方。
存储对象
:
变量
:全局变量、局部变量、堆栈指针等运行时动态生成的数据都存储在 SRAM 中。
缓冲区
:用于临时存储待处理的数据块,例如通讯协议中的接收/发送缓冲区。
堆
:假如启用了动态内存分配,则用于管理动态分配的内存块。
特性
:
高速访问,适合频繁读写操作。
断电后数据丢失,因此不适合长期存储。
范例容量范围为 6KB 到 64KB(具体取决于型号)。
总结
Flash
用于存放程序代码和长期化的数据。
ROM
在 STM32F103 上可能不存在作为独立的存储单元,但假如存在的话,它用来存放固定的启动代码或库函数。
SRAM
提供快速的数据访问空间,用于存储运行时的变量、堆栈和其他临时数据。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4