大家好,刚开始学习STM32f103zet6,对存储器的映射不是太了解。从而产生如下的疑问,请大家帮忙看看。
我将GPIO的demo code download到内部RAM中,程序可以正常运行,但是看memory 窗口0x2000 0000的地址的数据,跟用keil生成的bin文件的数据不一样。
我目前使用MDK,用jlink来进行debug。个人理解,程序download 到内部ram,那0x2000 0000的位置的数据应该和keil 生成的bin的数据相同。
并且如果程序reset后停在Main起始位置时,PC指针 = 0x0800 01c6,查相关资料指明0x0800 00000--0x0807 ffff为flash区域。即便是0x2000 0000被映到
0x0000 0000的位置开始,但是怎么会跑到0x0800 01c6位置呢。
请高手帮忙解答一些,先谢谢大家了。
可能这个问题真的很菜,但是我想了好久没有想明白,请大家帮帮忙,再次感谢了。 |