一、问题叙述
笔者最近在使用STM32H750型号的单片机做一个小项目,调试的时候发现无法进行软件仿真,进入仿真之后出现下图类似的错误,并且无法进入main函数。
笔者在网上找了许多方法,但是一部分是只使用STM32F10X系列的。最终笔者总结了一下方法。下文先阐述方法再大致叙述一个原理。
二、解决方法
1、在工程目录下新创建一个名为 debug.ini 的文件,在文件中写入一下文本并保存
map 0x40000000, 0x4000D3FF read write // APB1
map 0x40010000, 0x400177FF read write // APB2
map 0x50000000, 0x50003FFF read write // APB3
map 0x58000000, 0x58006BFF read write // APB4
map 0x40020000, 0x400BFFFF read write // AHB1
map 0x48020000, 0x48022BFF read write // AHB2
map 0x51000000, 0x52008FFF read write // AHB3
map 0x58020000, 0x580267FF read write // AHB4
map 0xE0000000, 0xE00FFFFF read write // CORTEX-M7 internal peripherals
FUNC void Setup (void) {
xPSR = 1<<24;
SP = _RDWORD(0x08000000);
PC = _RDWORD(0x08000004);
_WDWORD(0xE000ED08, 0x08000000);
}
Setup();
2、打开KEIL,选择 project->Options for Target '...' (上方魔术棒的标志)。打开后选择Debug。在Initalization File 栏中添加上 刚才创建的debug.ini文件即可