1. Flash(闪存)
- 主要用于存放程序代码(如固件、主程序、启动代码等)。
- 也可用于存放一些需要长期保存的数据(如配置参数、校准数据、序列号等)。
- 断电后内容不会丢失(非易失性存储器)。
- 典型用途:MCU上电后从Flash中读取指令并执行。
2. RAM(随机存取存储器)
- 主要用于运行时的数据存储,例如全局变量、局部变量、堆、栈、临时数据缓冲区等。
- 断电后内容会丢失(易失性存储器)。
- MCU运行过程中,CPU会对RAM进行频繁读写操作。
补充:
有些MCU还带ROM(Read-Only Memory,只读存储器)和 OTP(One-Time Programmable,一次性可编程存储器)都是非易失性存储器。
-
ROM 的特性与存储内容
ROM也是只读的,正常使用时数据不能修改,只能读取。断电后数据也不会丢失。ROM的抗篡改性强,一般情况下无法被用户或程序更改。常用于芯片出厂时固化出厂固件,比如boot程序,或者是一些不希望被修改的数据,比如校验表,再或者应用调试完成且再也不需要修改程序,这样也可以把应用固化到ROM中,然后每次从ROM启动。
-
OTP 的特性与存储内容
OTP只能进行一次性的编程,使用后就只能读不能再写了。OTP在出厂时内容为空,允许用户写入一次,写入后不可更改。写入的数据也是非易失性,断电后数据不会丢失。OTP比ROM更适合小批量、后期定制化的产品。常用于存储产品序列号、加密密钥、配置参数等信息。
总结表:
|
存储器类型 |
主要存储内容 |
是否掉电丢失 |
典型用途 |
|
Flash |
程序代码、固化参数等 |
否 |
固件、启动代码等 |
|
RAM |
运行时变量、堆栈、临时数据等 |
是 |
变量、数据缓冲等 |
|
ROM |
固定程序、启动代码 |
否 |
出厂固件等 |
|
OTP |
序列号、密钥、校准数据等 |
否 |
设备唯一信息、配置参数等 |
4495

被折叠的 条评论
为什么被折叠?



