请教PROTEUS

[复制链接]
5024|25
 楼主| ayb_ice 发表于 2011-11-2 15:35 | 显示全部楼层 |阅读模式
我写了个程序,就是AT89C51(跑12M,1.3K的简单程序)驱动8个数码管,加一个按键,一个LED,仿真时PC机CPU占用100%,严重不实时,而且闪烁不正常,但设断点看,程序正常,
程序有个T0中断,大约1.25MS中断一次

但官方的好多例程测试CPU时间仅占一点,我看了原理图和程序感觉不比我的简单,但为什么差别这么大呢
难道这里面有什么**,本人PROTEUS超级菜鸟
 楼主| ayb_ice 发表于 2011-11-2 15:36 | 显示全部楼层
本帖最后由 ayb_ice 于 2011-11-2 15:40 编辑

有图有真相
我的仿真结果

本帖子中包含更多资源

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

×
 楼主| ayb_ice 发表于 2011-11-2 15:45 | 显示全部楼层
这是官方例程的结果

本帖子中包含更多资源

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

×
古道热肠 发表于 2011-11-2 15:49 | 显示全部楼层
以前试过的,资源不会占到100%,对比官方例程找找原因。
 楼主| ayb_ice 发表于 2011-11-2 16:13 | 显示全部楼层
看过了,感觉没有问题
程序本身也不难
昨天测试都很正常,昨天的中断大概是1.25MS,今天加了点程序,加的很少,而且中断中加的更少,发现现象很不正常,但设断点或KEIL软件仿真完全正常,怀疑PROTEUS本身的问题,将中断周期改为2~3MS测试,明显比1.25MS周期时要正常些,与理论实际比较接近,严重怀疑PROTEUS的仿真效果,不敢相信能PROTEUS仿真40M单周期的51,
但鉴于本人是PROTEUS菜鸟,极有可能是自己不会用
chen3bing 发表于 2011-11-2 16:29 | 显示全部楼层
proteus仿真和实际还是有区别的。
 楼主| ayb_ice 发表于 2011-11-2 17:02 | 显示全部楼层
proteus仿真和实际还是有区别的。
chen3bing 发表于 2011-11-2 16:29

我怀疑区别大了,特别是项目比较大的时候
正在评估这玩意儿是否有必要深入了解一下,现在看来前景不妙啊
diweo 发表于 2011-11-2 18:02 | 显示全部楼层
停止按钮右边显示“6 messages"而且前面是黄色的感叹号。再看看官方例程下面显示的是”5 message",重要的是绿色的i。
建议你你点一下“6 messages,看看问题出在哪里
ygzjyh 发表于 2011-11-2 20:34 | 显示全部楼层
PROTEUS仿真时尽可能去掉仿真无用的东西,比如振荡电路、复位电路、数码管的位选不要用三极管,P2口直接与数码管相接即可,你图中三极管的发射极是灰色的电平,表示状态不确定,有可能是这个引起的。
 楼主| ayb_ice 发表于 2011-11-3 08:14 | 显示全部楼层
停止按钮右边显示“6 messages"而且前面是黄色的感叹号。再看看官方例程下面显示的是”5 message",重要的是绿色的i。
建议你你点一下“6 messages,看看问题出在哪里 ...
diweo 发表于 2011-11-2 18:02

那个最重要的警告是说"仿真不是实时的,因为CPU不够快"
,其它的都是一些加载HEX的提示
 楼主| ayb_ice 发表于 2011-11-3 08:58 | 显示全部楼层
非常感谢9L的"ygzjyh" 的确如你所说是三极管驱动电路引起的有图有真相,下一步按你所说去掉晶振电路,复位电路再测试但那个三极管驱动实际没有问题啊,先不管了上图

本帖子中包含更多资源

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

×
 楼主| ayb_ice 发表于 2011-11-3 09:04 | 显示全部楼层
去掉晶振,复位电路 CPU负载进一步降低

本帖子中包含更多资源

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

×
 楼主| ayb_ice 发表于 2011-11-3 09:06 | 显示全部楼层
PROTEUS仿真时尽可能去掉仿真无用的东西,比如振荡电路、复位电路、数码管的位选不要用三极管,P2口直接与数码管相接即可,你图中三极管的发射极是灰色的电平,表示状态不确定,有可能是这个引起的。 ...
ygzjyh 发表于 2011-11-2 20:34

还有绝招没有,再传授一点
zbhcqu 发表于 2011-11-3 09:32 | 显示全部楼层
例程中也有振荡电路和三极管,可是符合易燃很低。能解释不?
兰天白云 发表于 2011-11-3 09:39 | 显示全部楼层
估计是找到BUG了
 楼主| ayb_ice 发表于 2011-11-3 09:46 | 显示全部楼层
另外将T0中断由1.25MS改为3MS也可以显著降低CPU负载,感觉这东西实用性不大,仿真单独模块可能还有点用
lxyppc 发表于 2011-11-3 10:12 | 显示全部楼层
LED和电阻选成Digital的模式,默认是Analog的
 楼主| ayb_ice 发表于 2011-11-3 10:39 | 显示全部楼层
断续简化后CPU负载大大降低

本帖子中包含更多资源

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

×
 楼主| ayb_ice 发表于 2011-11-3 10:59 | 显示全部楼层
如图所示的属性设置是什么意思

本帖子中包含更多资源

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

×
wgsxsm 发表于 2011-11-3 11:57 | 显示全部楼层
学习。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

222

主题

15494

帖子

34

粉丝
快速回复 在线客服 返回列表 返回顶部