加载中…
个人资料
半_年
半_年
  • 博客等级:
  • 博客积分:0
  • 博客访问:175
  • 关注人气:6
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

LY-51S(STC89C52R):8个共阴极数码管-理解

(2012-09-12 14:18:28)
标签:

51单片机

分类: LY-51S单片机学习笔记
三、8个共阴极数码管的理解
    其实应该将独立的共阳极数码管和该节放在一起更加便于理解。
    其实数码管的原理都是一样的,靠点亮内部的LED来发光。一位数码管的引脚有10个。显示一个8需要7个段,另外还有一个表示小数点的dp点,第3和第8引脚为公共端,连接在一起。四位数码管的引脚有12个,除了8个表示段的引脚外,还有就是4个公共端。LY-51S上采用的就是两个四位的数码管。共阳极的就是将阳极接在一起(Vcc),共阴极的就是将阴极接在一起(GND)。单个共阳和共阴极的原理图如下所示:
http://s14/middle/7135bdd9n7a8c5a2b355d&690
    独立的公共端可以控制多位数码管中选哪一个点亮,所以叫位选端,和一个74HC537锁存器相连,其他8个端控制点亮数码管的哪个段,所以叫段选端,和另一个74HC537相连。如下图所示:
http://s3/middle/7135bdd9nc97ba6e9f362&690    由于数码管是共阴极接法,所以段选高电平点亮,位选低电平选通。
    在实验板上,段锁存接P2^2,位锁存接P2^3。锁存器的锁存控制端置于高电平时,读进数据,然后置于低电,停止读取。因为数码管的段码和位码均为8位,且共用单片机的P0(有10KΩ的排阻,所以从电流方面考虑,74HC573锁存器应该也起到扩大电流驱动电路的作用,这里知识感觉到应该是这样,具体的也没有查清楚)口,所以,在使用时需分开送数。因为这一性质,所以数码管每次只能点亮一位,要实现多个数码管点亮就要用到动态扫面原理,即让需要被点亮的数码管在人眼所不能分辨的时间内切换点亮,人眼看到的就是同时几个一起被点亮。
    因为51单片机I/O默认的均为高电平,所以只要将数码管和I/O口之间连接起来,板子一上电,P2口就默认为高电平1,所以,P2^2和P2^3就都为高电平,即段锁存和位锁存都被打开,考虑到这点,应该在点亮数码管的时候消除重影。有两种方法,一是从段选入手(P0=0),还有就是从位选入手(P0=0XFF),就是要么为打开了不显示任何东西,要么不管段码为何,不选任何位。
    数码管这节,有一个别人的显示数码管的子函数(写程序的基本步骤应该是自己先根据题目写出现象,然后再看别人的程序,这样才能提高自己的程序编写能力),在我遇到的有关数码管显示的程序中都能用到,且工作的很完美,其中site开始显示的位(如为1,则表示从第二个数码管开始显示),digit为显示数字的位数(如3,表示要显示一个3位数):
    void display(unsigned char site,unsigned char digit)

{

      unsigned char dex;

      for(dex=0;dex

      {

               LATCH1=1;          //清除数字变化对未点亮数码管产生交替重影

               P0=0;

               LATCH1=0;

 

               LATCH2=1;          //锁存要显示的位码

               P0=WM[dex+site];

               LATCH2=0;

 

               LATCH1=1;          //锁存要显示的段码

               P0=temp[dex];

               LATCH1=0;

               delay(1);          //延时一小段时间,太长数字会闪烁,太短会重影(我测试1-3都可以)

       }

} 

void delay(uint time)             //自定义延时函数,这个可自己调试的写

{

    uint i,j;

    for(i=time;i>0;i--)

          for(j=110;j>0;j--);

}


   
    

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有