《数码管的动态显示与静态显示ppt课件.pptx》由会员分享,可在线阅读,更多相关《数码管的动态显示与静态显示ppt课件.pptx(20页珍藏版)》请在三一办公上搜索。
1、数码管,数码管原理及静态显示,一、数码管介绍,数码管是一种半导体发光器件,其基本单元是发光二极管。,东莞理工学校电子科组,2、数码管的分类,数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。,东莞理工学校电子科组,共阴极,共阳极,共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相
2、应字段就不亮。共阴极数码管则与之相反,东莞理工学校电子科组,我们平时所看到的0-9这样的数字,通过控制不同的LED的亮灭来显示出这些字形的。为了显示数字或字符,必须对数字或字符进行编码。因此为LED显示器提供的编码正好是一个字节。比如对于共阳极数码管,显示“0”。则abcdef各段led灯亮,其余灭。对于共阳极,则在相应的阴极部分加低电平0即可。,数码管常用码表(段码),共阳极,东莞理工学校电子科组,0 xc0 , 0 xf9 , 0 xa4 , 0 xb0 , 0 x99 , 0 x92 , 0 1 2 3 4 5 0 x82 , 0 xf8 , 0 x80 , 0 x90 , 0 x88
3、, 0 x83 , 6 7 8 9 A B 0 xc6 , 0 xa1 , 0 x86 , 0 x8e C D E F,数码管常用码表,共阴极:,东莞理工学校电子科组,0 x3f , 0 x06 , 0 x5b , 0 x4f , 0 x66 , 0 x6d , 0 1 2 3 4 5 0 x7d , 0 x07 , 0 x7f , 0 x6f , 0 x77 , 0 x7c , 6 7 8 9 A B 0 x39 , 0 x5e , 0 x79 , 0 x71 , 0 x00 C D E F,单片机驱动数码管显示方法,通常将数码管的各段连接到单片机的8位I/O口,如P2口,P2口的8位分别连
4、接数码管的abcdefg各段,通过控制P2口各位的电平,控制数码管各段的亮灭。,东莞理工学校电子科组,数码管显示方式,数码管有两种显示方式:静态显示、动态显示。静态显示:静态驱动是指每个数码管的每一个段码都由一个单片机的I/O口进行驱动当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O口多,如驱动5个数码管静态显示则需要5840根I/O口来驱动,东莞理工学校电子科组,静态显示_一位数码管显示0-9,东莞理工学校电子科组,硬件连接:数码管的7段连接到P2口的P2.0-P2.6,公共端(共阳极)接高电平(5V)。软件设计:要显示0-
5、9,则将共阳极0-9的相应码型通过P2口输出到数码管各段。,东莞理工学校电子科组,void main() uchar dispcode10=0 xC0,0 xF9,0 xA4,0 xB0,0 x99, 0 x92,0 x82,0 xF8,0 x80,0 x90; /共阳极0-9码型 uchar k; for(k=0;k10;k+) P2=dispcodek; delaynms(1000);/延时1s ,在实际的单片机系统中,往往需要多位显示。动态显示是一种最常见的多位显示方法,应用非常广泛。,数码管动态显示,1动态显示概念用数码管显示信息时,由于每个数码管至少需要8 个I/O 口,如果需要多个
6、数码管,则需要太多I/O 口,而单片机的I/O 口是有限的。在实际应用中,一般采用动态显示的方式解决此问题。,动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。,所有数码管的段选全部连接在一起,如何能显示不同的内容呢?动态显示是多个数码管,交替显示,利用人的视觉暂留作用使人看到多个数码管同时显示。,在编程时,需要输出段选和位选
7、信号,位选信号选中其中一个数码管,然后输出段码,使该数码管显示所需要的内容,延时一段时间后,再选中另一个数码管,再输出对应的段码,高速交替。,例如需要显示数字“12”时,先输出位选信号,选中第一个数码管,输出1 的段码,延时一段时间后选中第二个数码管,输出2 的段码。把上面的流程以一定的速度循环执行就可以显示出“12”,由于交替的速度非常快,人眼看到的就是连续的“12”,在动态显示程序中,各个位的延时时间长短是非常重要的,如果延时时间长,则会出现闪烁现象;如果延时时间太短,则会出现显示暗且有重影。,例题:两位数码管动态显示0-99,东莞理工学校电子科组,void main() unsigned char k; while(1) for(k=0;k100;k+) P3=0XFF; P2=dispcodenum%10; P3=0XFe; delaynms(2); P3=0XFF; P2=dispcodenum/10; P3=0XFd;,delaynms(2); num+; if(num99) num=0; ,
链接地址:https://www.31ppt.com/p-1334187.html