您现在所在的是:

单片机论坛

回帖:4个,阅读:774 [上一页] [1] [下一页]
717
zhgw2000
文章数:12
年度积分:50
历史总积分:717
注册时间:2010/12/25
发站内信
发表于:2011/1/5 11:24:42
#0楼
上次做显示做成功了
现在要做键盘加显示
实现方法是51单片机+8155,8位7段显示、4x4键盘
请高手帮我看看我的思路和时间分配有没有什么问题

第一步,开辟一个缓冲区,8个单元分别对应显示器的8位

第二步,设置计时器T0,每20ms产生一个中断

第三步,检测是否按键(检测按键包括10ms左右延时消除按键抖动),若按键,扫描按键,获得相应键值

第四步,根据获得的键值,查表,将相应的值写入对应的缓冲单元

第五步,延时200ms,等待按键结束

第六步,返回第三步,下一个按键


中断程序:即显示程序,首先重放T0的初值,然后显示器显示对应的缓冲区内容,从右到左扫一遍,每一位显示1ms,然后返回程序



[此贴子已经被作者于2011/1/5 11:25:45编辑过]
717
zhgw2000
文章数:12
年度积分:50
历史总积分:717
注册时间:2010/12/25
发站内信
发表于:2011/1/5 11:27:24
#1楼
我程序写出来,拿到硬件上没效果,就帮我看看思路有没有什么问题,或者时间有什么问题。谢谢
719
jxsunyinwu
文章数:3
年度积分:50
历史总积分:719
注册时间:2010/12/25
发站内信
发表于:2011/1/8 10:21:26
#2楼
8155的正确使用
是显示有问题吗?用8155复位时间要比单片机复位时间要长,在初始化8155时应采用一个延时处理后才进行8155初始化,才能正常使用8155,键盘扫描最好采用定时中断扫扫描,用T1进行。那样扫描键盘就不用占用CPU时间了
1922
周长锁
文章数:312
年度积分:53
历史总积分:1922
注册时间:2006/4/29
发站内信
08年优秀博客奖
发表于:2011/1/8 14:00:54
#3楼
用HD7279等键盘显示专用电路比较方便,按键时有中断输出,不用消抖,显示刷新周期200ms足够了。
欢迎光临我的BLOG
717
zhgw2000
文章数:12
年度积分:50
历史总积分:717
注册时间:2010/12/25
发站内信
发表于:2011/1/10 22:45:18
#4楼
我按这思路然后protues也模拟出来了。就等明天做了
还是用的T0定时刷显示
然后CPU扫按键
上次做不出来是因为在显示中断的时候有些延时寄存器没有压入栈,导致跳不出循环了....谢谢LS的童鞋

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

46.8003