搜索
bottom↓
回复: 1

ABOV MCU内核仿真编译时的RAM存储注意事项

[复制链接]

出0入0汤圆

发表于 2014-9-6 10:25:14 | 显示全部楼层 |阅读模式
  最近自己支持的客户在使用ABOV的MCU时出现了一个比较奇怪的现象,电话沟通一直无解。去到现场时一时也被搞的云里雾里,直到静下心仔细看的时候才发现一个隐藏的问题。
         客户做的是一款蓝牙遥控音箱和台灯,程序写的很简洁,编译时完全正确。没有任何警告和错误提示。编译信息输出栏输出如下信息:
         Build target 'Target 1'
         assembling startup.a51...
         compiling main.c...
          linking...
         Program Size: data=134.0 xdata=80 code=9805
         creating hex file from "YL2PG"...
          "YL2PG" - 0 Error(s), 0 Warning(s).
         看样子程序编译的很顺利,接下来仿真也很顺利,客户用的是MC97F1204S的OCD仿真IC,MC97F1204OM在连接OCD-II配置正确,和导入程序正确后,点击运行时程序运行很正常,没有丝毫错误,程序可以正常解码和运行。
        但是当我们将程序导入量产IC时,导入和烧录一切正常,但是上电运行时问题出现了,程序在运行但是却不能正确解码,我们尝试修改了程序的各个部分,增加复位电路等,都没有得到我们想要的结果。
         折腾的好久一直没有找到正确的要点,为什么可以仿真却不能在正常IC上运行呢?
        直到我又一次把目光注意到编译信息上!
         Build target 'Target 1'
         assembling startup.a51...
         compiling main.c...
          linking...
         Program Size: data=134.0 xdata=80 code=9805
         creating hex file from "YL2PG"...
          "YL2PG" - 0 Error(s), 0 Warning(s).  
        对!问题就处在这里 Program Size: data=134.0 xdata=80 code=9805仔细看MC97F1204S的数据手册有如下内容

各位发现问题没? 这里编译中显示的是XDATA=80  DATA=134这个是RAM空间的占有,而MC97F1204S数据手册上只写了IC只有IRAM所以这个就是问题。编译后产生的内容出现了XDATA而MC97F1204S又没有XRAM所以造成了在运行时不能正常存取编译到XRAM中的数据。造成程序不能正常运行。
      这里MC97F1204S的OCD仿真在连接仿真器后显示的器件型号为MC97F1316这个可能大家都没有注意到。该IC打仿真IC其实是1316的内容 也就是说这颗IC具有能力仿真1316的IC而1316具有XRAM这就造成程序下载进去后出现能够正常运行的情况。所有的谜团就这样解开了。
     ABOV仿真IC有的是可以兼容多个型号的,但是在仿真时候超出可用资源并不会给予提示所以造成了不能正常运行的问题,所以在使用之前一定要搞清楚仿真IC的内核和真实使用IC的区别,以免造成困扰。
     如果遇到没有外部XDATA空间的IC就不要指定外部RAM空间 ,如果没有指定还是编译出外部数据的话,那就按下图进行配置即可解决。
      
  经验之谈,望大家指教更正。
                                                                                                                                                                 2014-7-23
                                                                                                                                                              FAE:Mark.she

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2014-9-18 17:01:15 | 显示全部楼层
本帖最后由 lmt50211 于 2014-9-18 17:02 编辑

以前有遇到过这类情况,需要设置数据类型的。还是必须设为DATA,XDATA不行。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 06:39

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表