问题:
今天在STM32工程进入软件仿真时,出现*** error 65: access violation at 0x40023800 : no 'read' permission错误。
点击RUN运行时出现*** error 65: access violation at 0x40023800 : no 'write' permission的错误。
解决方法:
1、新建一个.ini文件,内容为:
map 0x40000000,0x400FFFFF read write
2、向Option->Debug->Use_Simulator->Initialization_File中添加该文件。
3、再次进入debug后没有问题。
注:若进入debug后点击RUN按钮提示no 'execute/read'的话还需要进行如下修改:
Option->Debug->Use_Simulator->CPU.DLL的Parameter,改为-REMAP。
下面Dialog DLL的参数可以修改为下图所示(具体需对应自己使用的板子),有人说Cortex-M3只是个大框架,具体的厂商实现细节不一样,所以还是修改得具体点好。但我没有修改也没有出现问题。
几个参数的含义:
SARMCM3.DLL是一个动态链接库,名称SARMCM3表示是ARM Cortex-M3架构
DCM.DLL、TCM.DLL同理,表示Cortex-M系列。
DARMSTM.DLL、TARMSTM.DLL则指明了是STMicroelectronics(意法半导体)的ARM架构的产品。
参数-pCM3表示Cortex-M3系列的参数。