打印

数码管扫描问题

[复制链接]
2097|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jwwhy|  楼主 | 2011-9-11 20:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在要驱动5个共阳的数码管,5个数码管显示不同的参数,现在是每3MS进入一次中断 ,然后进行数码管轮流扫描,由于mCU输出的端口有限,用74LS164来驱动数码管的段,也放在中断里面,把需要显示的数字通过74LS164传送给数码管后,发现中断的时间都改变了 , 现在想问问,应该如何来做 ?? 应该把传送到74LS164的程序分出来吗?? 还是有什么更好的办法 ??

相关帖子

沙发
何工| | 2011-9-11 21:45 | 只看该作者
:o

使用特权

评论回复
板凳
yewuyi| | 2011-9-11 23:22 | 只看该作者
既然是中断,你怎么影响它呢?难道有更高级别的中断?否则,那还叫中断吗?

方案硬件思路没问题,具体代码怎么写,那就看你自己了。

使用特权

评论回复
地板
linjing| | 2011-9-12 00:24 | 只看该作者
好做,我一直用这个办法

有5个数码就定义5个字节的缓冲区,存放扫描码,
byte LED[5];
定时中断一次发送一个字节到74164
大概这个样子
static  byte i;
74LS164 = LED[i%5];
++i;

修改缓冲区的程序放在主程序中,像这样
显示12345
LED[0] = decode[1];
LED[1] = decode[2];
LED[2] = decode[3];
LED[3] = decode[4];
LED[4] = decode[5];
decode 是译码,具体看你要显示哪些内容,自己决定

使用特权

评论回复
5
jwwhy|  楼主 | 2011-9-12 14:02 | 只看该作者
楼上的 ,我现在是用汇编,有没有好的办法??

使用特权

评论回复
6
lyjian| | 2011-9-12 17:08 | 只看该作者
这个和汇编还是C没什么关系
思路是一样的

使用特权

评论回复
7
yewuyi| | 2011-9-13 12:43 | 只看该作者
楼上的 ,我现在是用汇编,有没有好的办法??
jwwhy 发表于 2011-9-12 14:02


还要什么办法呢?让别人再用汇编给你写一个示例?

这可是要严重批评的。

使用特权

评论回复
8
何工| | 2011-9-13 15:08 | 只看该作者
给你一个思路:设一个位计数器COUNT,,,每次中断,先关所有位选,再据计数器的数值,传送相应的数据段码到164,再开相应的位.  最后计数器指向下一个,中断返回....

使用特权

评论回复
9
ayb_ice| | 2011-9-13 17:06 | 只看该作者
这是搞MCU开发的基本功

使用特权

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

本版积分规则

83

主题

281

帖子

0

粉丝