打印

看程序

[复制链接]
1424|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xiaosi1911|  楼主 | 2013-7-23 17:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

   dula=0;
   P0=table[r];                                        //数码管段信号输出               
   dula=1;
   dula=0;为什么还要打开段选

   wela=0;
   P0=~(1<<c);                                        //数码管位信号输出
   wela=1;
   wela=0;这里为什么还要打开位选?
   delay(5);
沙发
xiaosi1911|  楼主 | 2013-7-23 17:26 | 只看该作者
求指教啊

使用特权

评论回复
板凳
four_zhg| | 2013-7-24 09:51 | 只看该作者
你的程序不完整,看的不知所云,你这个外围不是直接能通过单片机口输出显示的吧,还有其它辅助芯片,看好像是打开使能位

使用特权

评论回复
地板
江枫渔火| | 2013-7-25 11:51 | 只看该作者
位选与段选的信号线连着你的两个74h373锁存器,用来控制锁存器的信号更新的。在没有给这条线信号之前,锁存器的输出不会变化。所以这两个芯片可以共用其他数据线,而只在有了这个信号,相应的芯片才会更新输出。否则你对它输出不起作用。

所以当你要控制其中一块锁存器的时候,你就要给他来个信号,它为什么是位选?因为你的这个位选引脚连接的那块74H373输出恰恰就是数码管的各个位。它可以控制8个位。
数码管每一位有一个公共线,8个段线(7段+点)
而你的段信号则连着另一片74H373,它的输出则连接着数码管8个位的所有段。

当你打开段选,然后输出了一个数值出去,这个数值就会存到段控制的那片74H373,而不会影响位控制的74H373的值。

单片机通过先后传送数据到两片不同的74H373,来达到控制位和段的目的。

使用特权

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

本版积分规则

1

主题

2

帖子

0

粉丝