<meta name="keywords" content="必胜时时彩开户,keywords" /> 23课:LED数码管静态显示接口与编程 联系我们

23课:LED数码管静态显示接口与编程

   在单片机系统中,经常常应用LED数码数码管显示器来显示种种数字或符号。由于它具有显示清晰、亮度高、应用电压低、寿命长的特点,是以应用异常普遍。

弁言:还记得我们小时间玩的“磷寸棒游戏”吗,几根磷寸棒组合起来,能拼成种种各样的图形,LED数码管显示器现实上也是这么一个器械。

八段LED数码管显示器


<单片机静态显示接口>

   八段LED数码管显示器由8个发光二极管组成。基中7个长条形的发光管排列成“日”字形,此外一个贺点形的发光管在数码管显示器的右下角作为显示小数点用,它能显示种种数字及部门英文字母。LED数码管显示器有两种纷歧样的形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳极LED数码管显示器;此外一种是8个发光二极管的阴极都连在一起的,称之为共阴极LED数码管显示器。以下图所示。`

   共阴和共阳结构的LED数码管显示器各笔划段名和部署职位是类似的。当二极管导通时,对应的笔划段发亮,由发亮的笔划段组合而显示的种种字符。8个笔划段hgfedcba对应于一个字节(8位)的D7 D6 D5 D4 D3 D2 D1 D0,于是用8位二进制码便可以体现欲显示字符的字形代码。例如,关于共阴LED数码管显示器,当公共阴极接地(为零电平),而阳极hgfedcba各段为0111011时,数码管显示器显示"P"字符,即关于共阴极LED数码管显示器,“P”字符的字形码是73H。假定是共阳LED数码管显示器,公共阳极接高电平,显示“P”字符的字形代码应为10001100(8CH)。这里必须重视的是:许多产物为便利接线,常不按规则的措施去对应字段与位的关系,这个时间字形码就必须凭证接线来自行设计了,前面我们会给出一个例程。

   在单片机应用系统中,数码管显示器显示经常应用两种措施:静态显示和静态扫描显示。所谓静态显示,就是每个数码管显示器都要占用伶仃的具有锁存功效的I/O接口用于笔划段字形代码。这样单片机只需把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,是以,应用这类措施单片机中CPU的开支小。能供应伶仃锁存的I/O接口电路许多,这里以经常应用的串并转换电路74LS164为例,简介一种经常应用静态显示电路,以使年夜家对静态显示有一定的明确。

   MCS-51单片机串行口要领押为移们存放器要领,外接6片74LS164作为6位LED数码管显示器的静态显示接口,把8031的RXD作为数据输入线,TXD作为移位时钟脉冲。74LS164为TTL单向8位移位存放器,可完成串行输入,并行输入。其中A、B(第1、2脚)为串行数据输入端,2个管脚按逻辑与运算纪律输入旌旗暗记,公一个输入旌旗暗记时可并接。T(第8脚)为时钟输入端,可毗连到串行口的TXD端。每个时钟旌旗暗记的上升沿加到T端时,移位存放器移一名,8个时钟脉冲事后,8位二进制数一切移入74LS164中。R(第9脚)为复位端,当R=0时,移位存放器列位复0,只需当R=1时,时钟脉冲才起作用。Q1…Q8(第3-6和10-13管脚)并行输入端划分接LED数码管显示器的hg---a各段对应的管脚上。关于74LS164还能作以下的简介:所谓时钟脉冲端,着实就是须要高、低、高、低的脉冲,岂论这个脉冲是怎样来的,好比,我们用根电线,一端接T,一端用手拿着,划分接高电平、低电平,那也是给出时钟脉冲,在74LS164取得时钟脉冲的瞬间(再讲清晰点,是在脉冲的沿),假定数据输入端(第1,2管脚)是高电平,则就会有一个1进入到74LS164的外部,假定数据输入端是低电平,则就会有一个0进入其外部。在给出了8个脉冲后,最早辈入74LS164的第一个数据到达了最高位,然后再来一个脉冲会有甚么发生呢?再来一个脉冲,第一个脉冲就会从最高位移出,就象车站排队买票,栏杆就那么长,要之前面出来一自己,前面必须要早年面走出去一自己才行。

    弄清了这一点,下面让我们来看电路,6片7LS164首尾相串,而时钟端则接在一起,这样,当输入8个脉冲时,从单片机RXD端输入的数据就进入到了第一片74LS164中了,而当第二个8个脉冲到来后,这个数据就进入了第二片74LS164,而新的数据则进入了第一片74LS164,这样,当第六个8个脉冲完成后,首次送出的数据被送到了最左面的164中,其他数据按序涌现在第一、2、3、四、五片74LS164中。有个效果,在第一个脉冲到来时,除第一片74LS164中吸收数据外,其他各片在干吗呢?它们也在吸收数据,由于它们的时钟端都是被接在一起的,可是数据还没有送到其他各片呢,它们在吸收甚么数据呢?。。。。。。着实所谓数据不外是一种说法而已,现实就是电平的曲折,当第一个脉冲到来时,第一片164虽然是从单片机吸收数据了,而其它各片也接到前一片的Q8上,而Q8是一根电线,在数字电路中它只能够有两种状态:低电平或高电平,也就是“0”和“1”。以是它的下一片74LS164也相当因此在吸收数据啊。只是吸收的一切是0或1而已。这个效果放在这儿诠释,能够有同伙五体投地,而有的同伙能够照样不清晰,这现实上触及到数的本质的效果,假定不懂的,请仔细思虑,并找一些数字电路的数,明确164的使命原理,再来看这个效果,或许去看看我的此外一篇文章《27课:关于单片机的一些基本看法》的文章。务必弄懂,弄懂了这一点,你的级别就高已往源学习者,可谓入门者了。

出口:把要显示的数划分放在显示缓冲区60H-65H共6个单元中,而且划分对应各个数码管LED0-LED5。

出口:将预置在显示缓冲区中的6个数成对应的显示字形码,然后输入到数码管显示器中显示。

单片机led显示法式模范模范以下:

DISP: MOV SCON,#00H ;初始化串行口要领0

MOV R1,#06H ;显示6位数

MOV R0,#65H ;60H-65H为显示缓冲区

MOV DPTR,#SEGTAB ;字形表的出口地址

LOOP:

MOV A,@R0 ;取最高位的待显示数据

MOVC A,@A+DPTR ;查表取得字形码

MOV SBUF,A ;送串行口显示

DELAY: JNB TI,DELAY ;期待发送终了

CLR TI ;清发送标志

DEC R0 ;指针下移一名,准备取下一个待显示数

DJNZ R1,LOOP ;直到6个数据全显示完。

RET

SETTAB: ;字形表,前面有简介,以后我们再简介字形表的制造。

DB 03H 9FH 27H 0DH 99H 49H 41H 1FH 01H 09H 0FFH

; 0 1 2 3 4 5 6 7 8 9 消隐码

单片机显示测试用主法式模范模范

ORG 0000H

AJMP START

ORG 30H

START: MOV SP,#6FH

MOV 65H,#0

MOV 64H,#1

MOV 63H,#2

MOV 62H,#3

MOV 61H,#4

MOV 60H,#5

LCALL DISP

SJMP $

   假定按图示数码管排列,则以上主法式模范模范将显示的是543210,想想看,假定要显示012345该怎样送数?

   下面我们来剖析一下字形表的制造效果。先就上述“尺度”的图形来看吧。写出数据位和字形的对应关系并列一个表以下(设为共阳型,也就是对应的输入位为0时笔段亮)

若何,字形表会做了吧,就是这样列个表格,凭证请求(0亮或1亮)写出对应位的0和1,就成了。做个演习,写出A-F的字形码吧。

假定为了接线便利而打乱了接线的序次,那么字形表又该若何接呢?也很质朴,一样地列表啊。以新实验板为例,共阳型。接线以下:

P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0

C E H D G F A B

则字形码以下所示:

;0 00101000 28H

;1 01111110 7EH

;2 10100100 0A4H

;3 01100100 64H

;4 01110010 72H

;5 01100001 61H

;6 00100001 21H

;7 01111100 7CH

;8 00100000 20H

;9 01100000 60H

作为演习,年夜家写出A-F的字形代码。

   原来这里是解说单片机数码管显示器的静态接口的,到此应当可算阻拦了,然则我还想接着下面讲到的数的本质的效果再谈一点。单片机中有一些术语、名词原来是赞助我们明确事物的,但有时我们会被这些术语的相关语义所嫌疑,以致不克不及进一步认清他们的本质,由此浅易堕入嫌疑的田地。只需深刻地明确了74LS164的使命特点,才干真正明确何谓串行的数据。有兴趣的同伙还能再看看我网站http://mamjap.com查找相关内容