发新帖我要提问
12
返回列表
打印

哦,不好意思,wjy1107原来是位**!

[复制链接]
楼主: starking66
手机看帖
扫描二维码
随时随地手机跟帖
21
starking66|  楼主 | 2009-4-24 10:35 | 只看该作者 回帖奖励 |倒序浏览

哦,不好意思,wjy1107原来是位**!

这个是2线楼宇对讲机的数码键盘电路图!
有BIN文件,就是没有原代码,整套系统PCB和原理图我都有,觉得这是提高实践的大好机会才尝试去搞!才开始就遇到困难了!

不过的确A与C位置没有错,如果你还是不相信可以留下你的Email,我把PCB图也发给你看!
不过也很想知道A与C交换怎么实现这个功能?!谢谢!

使用特权

评论回复
22
wjy1107| | 2009-4-24 11:32 | 只看该作者

wjy0722@gmail.com

使用特权

评论回复
23
红心j| | 2009-4-24 13:07 | 只看该作者

提示20楼MM

要说电路烂,不在于A、C,而在于164控制最烂。

至于C,相当于控制选择显示/按键,A、B相当于显示位选/键盘行选。

使用特权

评论回复
24
starking66|  楼主 | 2009-4-24 15:58 | 只看该作者

这个电路是能用的

虽然我画的图有点错误,不过原理上还是能用的,只是21IC上能写这个电路的工程师不肯赐教而已!
哎~

使用特权

评论回复
25
wjy1107| | 2009-4-24 16:02 | 只看该作者

我又仔细的想了一下,能实现但是比较麻烦.

我又仔细的想了一下,能实现但是比较麻烦.
用138的C作为LED显示和键盘扫描的开关.
当C=1时,键盘扫描与164的移位同时进行;当C=0时点亮其中一位LED.
当然这个时候的键盘扫描就需要修改了.需要根据移入164的数据与控制CLK的状态所组成的数据顺序进行键盘扫描的读取.而不是按照顺序读取.
让4位LED都点亮,这个过程就需要重复4遍.而在点亮每一位LED的时候,还需要注意当前138的A与B的值,并且注意先改变A与B的值最后改变C值, 同时要注意164的锁存值是在CLK的上升沿改变的,也就是138的A在选择哪位LED点亮的时候不能产生上升沿.即在串行操作164的时候,A的状态要停留在1上.这样就可以避免在选通LED的时候产生上升沿.

经过上面的处理,在主程序中进行循环,那么LED的显示就会产生视觉存留现象,就好像4个LED一起亮.

使用特权

评论回复
26
starking66|  楼主 | 2009-4-25 08:57 | 只看该作者

wjy1107能写出个程序试下么?

wjy1107能写出个程序试下么?
写下程序用PROTUES仿真试试看!

使用特权

评论回复
27
耕在此行| | 2009-4-25 12:59 | 只看该作者

呵呵 wjy1107聪明

楼主 自己要多动动脑筋啰

使用特权

评论回复
28
starking66|  楼主 | 2009-4-25 13:55 | 只看该作者

呵呵!我也在尝试哦!

感谢wjy1107了!

使用特权

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

本版积分规则