打印

求救 MDK523 使用GD32F130K6 仿真问题

[复制链接]
1937|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Kevion_lin|  楼主 | 2017-6-2 12:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用MDK523 使用GD32F130K6 模拟仿真时 想观察各寄存器,然后出现:
error 65: access violation at 0x40021000 : no 'write' permission 错误,
百度了下 有些说是要设置MAP , 但我在IROM1 里添加 0X40000000地址 到5000000, 软件就直接死机了。
有些说是要在DEBUG里 设置,但找不到GD32F130的。 下面这个是别人解决的例子用的是STM32的

使用MDK自己创建一个STM32F103ZE核的项目加入源码后编译,正常,在线仿真单步执行出现如下问题

error 65: access violation at 0x40021000 : no 'read' permission

发现是Debug里面的设置有问题
cnblogs.com/xiaobo-Linux
主要是下面2项设置
Dialog DLL默认是DCM3.DLL
Parameter默认是-pCM3
应改为
Dialog DLL默认是DARMSTM.DLL
Parameter默认是-pSTM32F103ZE
就正常了

我还问了些GD32的技术支持人员, 说没碰到过这情况, 要我接目标板, 我被打败了。  
沙发
Kevion_lin|  楼主 | 2017-6-2 15:24 | 只看该作者
2 存储器的访问
  当进入模拟仿真界面后,按“全速”F5或“单步”F10调试键后,在“command”窗口中将会出现类似如下的错误提示:“***  error 65: access violation at 0x40023800 : no ′read′ permission”,意思是在地址0x40023800处访问违例,没有“读”的权限。地址0x40023800是外设寄存器地址。要使外设寄存器地址具有相应的“读”、“写”、“执行”权限,可在命令窗口中输入MAP命令(不区分大小写)。命令格式为:
  MAP 起始地址,结束地址 READ WRITE EXEC其中,READ表示“读”权限,WRITE表示“写”权限,EXEC表示“执行”权限,结束地址与起始地址的空间尺寸不超过128 MB,即不超过0x08000000字节。外设寄存器的存储空间分布较广,不可能在每次调试时都通过命令窗口输入MAP指令,可通过如下的操作步骤进行。
①新建一个文本文件,打开该文件,执行文件菜单命令“另存为”,在打开的“另存为”对话框中,文件名输入为initmap.ini,保存类型选择为“所有文件”,并保存。在文件中输入如下内容并保存:
map 0x40000000,0x47ffffffreadwrite
map 0x50000000,0x57ffffffreadwrite
map 0xa0000000,0xa7ffffffreadwrite
map 0xf0000000,0xf7f00000 readwrite
根据需要,可在该文件中输入包含所有外设寄存器的MAP命令,使所有外设寄存器都具有“读”、“写”权限。但注意映射空间不要超过0x08000000,否则调试时会提示错误:“***  error 129: MapMemmap size truncated to 128MB”。
②单击,打开“Options”对话框,切换到“Debug”,在“Initialization File”的右边单击,打开“选择仿真初始化文件”对话框,选择上一步保存的initmap.ini文件。单击“Edit”按扭,可打开文件再次修改。

都没人回复啊。。。。。。

使用特权

评论回复
板凳
戈卫东| | 2017-6-3 12:13 | 只看该作者
不支持吧。
直接连开发板吧。

使用特权

评论回复
地板
xyz549040622| | 2017-6-8 22:30 | 只看该作者
还想软件模拟。。。必须不支持呀。

使用特权

评论回复
5
叶方普| | 2017-6-14 17:32 | 只看该作者
国产灵动微32位ARM芯片   qq2850457574/362549481

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

6

帖子

1

粉丝