LED显示时用动态描效果老是不好,有时有个中断什么的,就停一下。请问用锁存器静态显示怎么做,动态的真的不行吗?

lclwcf 2003-10-20 06:39:40
我做的一个东西,单片机要扫描8*8的矩阵键盘,还要点亮8*4的LED点阵,串口还要进行通信,有时串口来个中断什么的,LED就闪一下,我在中断中也加了扫描后不闪了,但是查询键盘也需要时间,而且还有处理多键按下,放开的数据并传给PC机,q我怕效果会不好,请问动态的能达到要求吗,请就大的方向指点一下,如果静态的可以,能告我哪能找到资料。
...全文
78 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
lclwcf 2003-10-24
  • 打赏
  • 举报
回复
谢谢各位,我在中断和扫描键盘中也插入了LED扫描后就看不出来了,我想可能是DELPHI控件的串口事件的反应时间要长一些吧,我会试一试各位的方法的。
oral_expert 2003-10-24
  • 打赏
  • 举报
回复
另外,我记得164是串行转并行的,好象有锁存等我回头查一下手册。
oral_expert 2003-10-24
  • 打赏
  • 举报
回复
用LS373就可以完成锁存。就是在低8位锁存地址常用的那种。静态的效果很稳定,但缺陷是成本高一点。
许留心 2003-10-23
  • 打赏
  • 举报
回复
用软件办法测试键盘是否闭合。
yzhonghe 2003-10-23
  • 打赏
  • 举报
回复
中断处理要尽量短
led显示可以使用定时器做
试试吧
galle 2003-10-23
  • 打赏
  • 举报
回复
你用的什么LED呀!可以考虑用液晶的带几个字节的RAM的,就不会有你说的问题了!
hb_wxy 2003-10-22
  • 打赏
  • 举报
回复
mark
zhk1124 2003-10-22
  • 打赏
  • 举报
回复
只是设计方案有点问题只要把要显示的数据放到显示缓冲区让显示部份自己处理显示,就不会出现这种情况。
还有设计单片机主程序时不要只简单用中断或查询。本人几十年来一直用一个半中断半查询的方法。有时自己感到有些复杂的情况就能得到很好的处理。方法很简单,先设置一个中断标志,有中断时,只对标志位置位主程序查询这个标志,如果有中断处理,处理后清标志位。注意这方法不能用于高速处理程序。
HEROP 2003-10-21
  • 打赏
  • 举报
回复
查询键盘毫秒级的就可以了。中断的程序要写的尽可能短。
wangluyan 2003-10-21
  • 打赏
  • 举报
回复
对于动态显示,不管你处理什么中断,都有可能闪动!
一般怎样处理:中断处理程序不能写得太长,要么在处理中断时不显示!

如果采用静态驱动:建议采用74hc595.
wangluyan 2003-10-21
  • 打赏
  • 举报
回复
74ls164没有锁存功能!
zhaoyk1981 2003-10-21
  • 打赏
  • 举报
回复
静态的很好用呀
74ls164就可以搞定了
taoest 2003-10-20
  • 打赏
  • 举报
回复
一个最普通的CPU就能处理你所说的这些所有的功能。想象扫描键盘,扫描LED,还有送数据到寄存器,才用多少时间啊。如果不行,还是要在程序上多下点工夫,肯定能行的。
我以前用一个12MHz的89c52,做4*8LED,3*3键盘,24BIT数据采集(低速),串口通讯,还有最要命的32位长整型数乘法数值修正运算,都感觉不到任何停顿。
建议显示和键盘用定时器中断1kHz。数据采集用外中断,数据处理用主程序,键盘动作也用主程序。

当时的32位数乘法运算大概要0.1秒。

27,373

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧