标题: 学51单片机-数码管静态显示 [打印本页]

作者: jiajiamei    时间: 2015-3-24 22:53
标题: 学51单片机-数码管静态显示
      
      数码管,英文名称Segment Displays,是把多个发光二极管封装在一起,组成8字,或者米字形的器件。
      如上图所示,分别为8字和米字形的数码管,还有一些异形的,暂时不考虑。
      今天主要说8字形的数码管,这种数码管主要分两类:7段的和8段的;驱动方式分两种:共阴极 和 共阳极。根据连在一起的字符数量,还会分为1位的,2位的,3位的,4位的等等。
      先说七段和八段的分别,这个很简单,从外表就能看出来。把8字分成一段一段的LED,刚好有7段,如果再加上右下角那个小点,就是8段。也就是说,一个完整的1位数码管由七个或者八个LED组成,想要显示1、2、3等等的字符,点亮相应的数码管组成该字符就行。那么如何点亮?问题来了。
      还记得点亮发光二极管那篇教程里面提到的LED的驱动方式:http://www.51hei.com/bbs/dpj-31860-1.html
      数码管是由发光二极管组成的,发光二极管有两种驱动方式,数码管自然也有两种驱动方式:共阴极 与 共阳极。
      共阳极是指数码管内部LED的正极接在一起,想要点亮LED,拉低相应的负极即可。共阴极是指数码管内部LED的负极接在一起,想要点亮      LED,拉高相应的正极即可。
      什么是数码管编码?就是让数码管显示数字时,对应的IO输出的高低电平。
共阳极的编码为0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e。
共阴极数码管编码为:0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71。
什么是段选?什么是位选?
段选就是我想显示数字时,这个数字对应的IO编码,也就是上面的数码管编码。
位选就是,当1个数码管内部集成了3位数字的时候,我想让左、中、右这三个数字其中一个显示3的时候,对位进行操作的编码。很多人问问题的时候,段选和位选都分不清。
曾经有个家伙问我:1位的数码管和2位的数码管编码为什么不一样?当时把我给绕进去了! 只要是同种数码管,不管是1位、2位、4位编码肯定是一样的。
      接下来是驱动电路,以共阴极为例
      锁存器的功能就是可以把当前输入的状态在输出脚锁住,这样,及时输入变化,输出也能保持不变。控制方式非常简单,只需控制74HC573的11脚即可。
      这里留个思考题,为什么用74HC573来驱动数码管,不用单片机直接驱动?
      下面是程序,选中一个数码管,显示数字 3.
      
程序下载地址: ONE_SEG.zip (26.43 KB, 下载次数: 59)





作者: jasonzc    时间: 2017-6-6 10:00
如果要实现电压数值的测量显示该怎么办
作者: zql111000    时间: 2018-5-5 12:11
老板能下载吗?





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1