打印
[AVR单片机]

atmega128仿真大于64KByte的程序时,仿真不正确

[复制链接]
1692|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lisnnfly|  楼主 | 2007-2-26 23:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
仿真环境:avrstudio4.12   GCC  ATMEGA128
1. 我的程序已经大于64KByte了,但在studio中观察反汇编窗口时发现:在小于0x8000(即64KByte)地址的代码都有相应的C源代码显示,而大于0x8000的则没有。

2. 我的程序在仿真时,单步运行时,明明是一段顺序执行的程序却会跳到另外一个无关的函数中去(注:不是中断函数),但是程序不仿真运行是完全正确的。
请各位朋友一起来分析下,这可能是什么问题。我估计是GCC编译生成的调试文件.elf在studio中显示有问题,即反汇编的代码与C源文件对应不上。

相关帖子

沙发
chuandaoxy| | 2007-2-27 09:22 | 只看该作者

软件版本错误,有的不支持大于64k编译,换一个版本

使用特权

评论回复
板凳
lisnnfly|  楼主 | 2007-2-27 11:47 | 只看该作者

难道是avrstudio的版本不行,不能仿真大于64KByte的程序吗?

我用的是WinAVR-20050214, 应该可以编译大于64KByte的。而且我不仿真时,直接加电运行程序都是正常的。

难道是avrstudio的版本不行,不能仿真大于64KByte的程序吗?

使用特权

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

本版积分规则

10

主题

11

帖子

0

粉丝