keil软件仿真时遇到的无法操作内存报错问题

最近在keil5软件仿真,对内存模拟验证直接地址调用函数时出现如下错误:

*** error 65: access violation at 0x20008000 : no 'execute/read' permission

*** error 65: access violation at 0x2000FFEC : no 'write' permission

解决方法有两种方法,推荐第一种,一劳永逸嘛

一、debug.ini文件配置(推荐,只需设置一次即可,第二种方法需要每次仿真时都要操作一遍,比较麻烦)

①在工程目录下新建"debug.ini"文件,用记事本打开,输入“map 0x20000000, 0x2000FFFF exec read write ”保存退出,我报错是

            *** error 65: access violation at 0x20008000 : no 'execute/read' permission

            *** error 65: access violation at 0x2000FFEC : no 'write' permission

所以写的是:0x20000000, 0x2000FFFF,这里根据实际需求情况填写

②打开keil软件的“options for target”->“Debug”->"Initialization File"添加刚才新建的debug.ini文件,再点OK

③点击“Debug”进行仿真发现程序运行正常。

二、Memory Map(每次仿真都要设置)

①进入“DEBUG”模式后(必须先进入仿真模式),菜单栏“Debug”-"Memory Map"-添加期望内存地址范围,勾选权限

②开始执行仿真,正常运行,无内存操作报错

如果能帮到你,麻烦顺手点个赞呗,谢谢啦!!