如何在实际硬件中指定内存区域,即 STM32F103RB

How to specify a memory area in Actual Hardware i.e. STM32F103RB

在 Keil uvision 中,我可以使用 MAP 命令定义内存区域。

MAP 0x3FFFFB44,0x3FFFFFF8 read write

我可以使用 Keil "Debug" 下拉菜单中的内存映射对话框,指定用于数据存储和程序执行的内存区域。

但是,我应该如何指定实际硬件中的内存区域(在我的例子中是STM32F103RB)?

在我的 stm32 微控制器中烧录代码之前,有没有办法在 STM32 ST-LINK 实用软件中指定内存区域?

注意: 我希望能够 read/write 在 0x3FFFFB44,0x3FFFFFF8 的内存区域中,这是不可访问的。在内存映射对话框中添加此内存区域范围后,Keil Simulator 一切正常。我应该怎么做才能在实际硬件中访问该区域?

谢谢

该区域在真实设备上不可用。

如果您查看数据表中的内存映射,您会发现该区域是 "reserved"。如果您想 select 工作区域,请查看您设备的完整 MemoryMap。

通常是

开始的区域

0x08000000 -> 闪光灯

0x20000000 -> 内存

可用。您设备的确切尺寸取决于您的具体设备。