单片机RAM区可以加载代码吗?
小弟看SPI FLASH的规格书,对于规格书的内容感到疑惑不解,原文和译文如下,文中提到“Dual SPl Read指令非常适合在上电时将代码快速下载到RAM”,请问单片机RAM区域不是存储数据的吗?怎么可以加载代码呢?7.1.2 双SPI指令
W25X40CL在使用“快速读取双输出(3Bh)”和“快速读取双I/O (BBh)”指令时支持双SPI操作。这些指令允许数据以普通串行闪存设备的两到三倍的速率传输到设备或从设备传输。DualSPl Read指令非常适合在上电时将代码快速下载到RAM(代码阴影)或直接从SPI总线(XIP)执行非速度关键代码。当使用双SPl指令时,DI和DO引脚变成双向I/O引脚:IO0和IO1。
这是对于那些能在RAM中运行程序的单片机(例如Cortex-M等)而言的,而8051并不能在RAM运行程序。
对于那些单片机,内置ROM中仅存放初始化代码,将外部EEPROM中的内容读取放在RAM区域,随后跳转到RAM继续执行。
我猜测后续的STC33F应该是支持该功能的。 kksk 发表于 2023-7-11 17:36
这是对于那些能在RAM中运行程序的单片机(例如Cortex-M等)而言的,而8051并不能在RAM运行程序。
对于那些 ...
您说“对于那些单片机,内置ROM中仅存放初始化代码”,请问初始化完成后的那部分代码放在哪里呢? 980578873 发表于 2023-7-11 19:19
您说“对于那些单片机,内置ROM中仅存放初始化代码”,请问初始化完成后的那部分代码放在哪里呢? ...
仍然在ROM里面,ROM是不会变的,这是用户的启动程序 kksk 发表于 2023-7-11 20:19
仍然在ROM里面,ROM是不会变的,这是用户的启动程序
ROM是不是FLASH 980578873 发表于 2023-7-12 09:54
ROM是不是FLASH
对,我这里说的ROM指片上FLASH STC32F系列的 ICache, 就是在高速RAM中运行程序,只是没开放用户可以设置
不计较成本的话,可以在 80:0000H后面开辟一个 RAM区,给用户动态变更运行的程序
页:
[1]