找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

为什么在的都实验板运行正常,Proteus仿真异常?

查看数: 2225 | 评论数: 5 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2021-9-25 20:20

正文摘要:

菜鸟遇到问题了,同一段代码写进实验板运行正常,仿真时数码管却不能正常显示。 压缩包里有Proteus仿真文件。

回复

ID:678280 发表于 2021-9-26 15:59
本帖最后由 一片一城 于 2021-9-26 16:34 编辑
npn 发表于 2021-9-26 11:13
TR0、TR1是启动定时器0、1计时,而不是中断。
仿真的数码管 只要频率快了就无法正常显示。

  P0=table[shi];//送段选数据。
  dula=1;        //锁存
  dula=0;
  delay(5);

npn老师,你是说这个延时时间太短了?
刚才试过,把delay(5),延长到40(约延时40ms),笔划闪动着显示全了,但很难找到平衡点,就是很难使数码管稳定地显示。

上午我试过wulin老师的代码,未改动延时,效果非常好。
ID:968316 发表于 2021-9-26 11:45
楼上说的,是有可能频率过快的,不过目前我只用仿真
ID:57657 发表于 2021-9-26 11:13
TR0、TR1是启动定时器0、1计时,而不是中断。
仿真的数码管 只要频率快了就无法正常显示。
ID:678280 发表于 2021-9-26 10:57
wulin 发表于 2021-9-25 21:56
这是郭天祥挖的一个坑,好多人都掉进去了。其实在实验板上运行也不算正常,只是不易察觉。这段代码根本起不 ...

谢谢wulin老师,这是我第三次得到你的帮助了。

要说有坑,学到中断这部分已经遇到两个了。

不过我猜想这个错误是郭老师的助手弄出来的,而非郭老师本人所为。可惜一点的是,买了实验板快一年了没有看到哪里出现过“更正”之类的消息。
ID:213173 发表于 2021-9-25 21:56
这是郭天祥挖的一个坑,好多人都掉进去了。其实在实验板上运行也不算正常,只是不易察觉。这段代码根本起不到消除鬼影的作用,使用仿真时就乱套了。
  1. void display(uchar shi,uchar ge) //数码管显示函数。
  2. {
  3.   P0=0x00;        //消隐
  4.   dula=1;        //锁存
  5.   dula=0;

  6.   P0=0xfe;        //送位选数据(十位);
  7.   wela=1;        //锁存
  8.   wela=0;

  9.   P0=table[shi];//送段选数据。
  10.   dula=1;        //锁存
  11.   dula=0;
  12.   delay(5);

  13.   P0=0x00;
  14.   dula=1;
  15.   dula=0;

  16.   P0=0xfd;
  17.   wela=1;
  18.   wela=0;

  19.   P0=table[ge];
  20.   dula=1;
  21.   dula=0;
  22.   delay(5);
  23. }
复制代码

评分

参与人数 1黑币 +15 收起 理由
一片一城 + 15 很给力!

查看全部评分

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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