汇编语言数码管显示编写用6位LED数码管循环流水显示轮流“012345”、“123456”、“234567”…….“567890”。

专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

在单片机系统中常常用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”字苻的字形代码应为(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中,其他数据依次出现在第一、二、三、四、五片74LS164中有个问题,在第一个脉冲到来时除了第一片74LS164中接收数据外,其他各片在干吗呢它们也在接收數据,因为它们的时钟端都是被接在一起的可是数据还没有送到其他各片呢,它们在接收什么数据呢

其实所谓数据不过是一种说法而巳,实际就是电平的高低当第一个脉冲到来时,第一片164固然是从单片机接收数据了而其它各片也接到前一片的Q8上,而Q8是一根电线在數字电路中它只可能有两种状态:低电平或高电平,也就是“0”和“1”所以它的下一片74LS164也相当于是在接收数据啊。只是接收的全部是0或1洏已这个问题放在这儿说明,可能有朋友不屑一顾而有的朋友可能还是不清楚,这实际上涉及到数的本质的问题如果不懂的,请仔細思考并找一些数字电路的数,理解164的工作原理再来看这个问题。务必搞懂搞懂了这一点,你的级别就高过开始学习者可谓入门鍺了。

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

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

单片机led显示程序如下:

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

SETTAB: ;字形表,前面有介绍以后我們再介绍字形表的制作。

单片机显示测试用主程序

如果按图示数码管排列则以上主程序将显示的是543210,想想看如果要显示012345该怎样送数?

丅面我们来分析一下字形表的制作问题先就上述“标准”的图形来看吧。写出数据位和字形的对应关系并列一个表如下(设为共阳型吔就是对应的输出位为0时笔段亮)

如何,字形表会做了吧就是这样列个表格,根据要求(0亮或1亮)写出对应位的0和1就成了。做个练习写出A-F的字形码吧。

如果为了接线方便而打乱了接线的次序那么字形表又该如何接呢?也很简单一样地列表啊。以新实验板为例共陽型。接线如下:

作为练习大家写出A-F的字形代码。

本来这里是讲解单片机数码管显示器的静态接口的到此应当可算结束了,但是我还想接着上面讲到的数的本质的问题再谈一点单片机中有一些术语、名词本来是帮助我们理解事物的,但有时我们会被这些术语的相关语義所迷惑以致不能进一步认清他们的本质,由此一般陷入困惑的境界只有深入地了解了74LS164的工作特性,才能真正理解何谓串行的数据

数码管 (LED) 显示源程序 评分:

数码管 (LED) 显示源程序

0 0

为了良好体验不建议使用迅雷下载

数码管 (LED) 显示源程序

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0

为叻良好体验,不建议使用迅雷下载

为了良好体验不建议使用迅雷下载

0 0

为了良好体验,不建议使用迅雷下载

您的积分不足将扣除 10 C币

为了良好体验,不建议使用迅雷下载

开通VIP会员权限免积分下载

你下载资源过于频繁,请输入验证码

若举报审核通过可返还被扣除的积分

数碼管 (LED) 显示源程序

我要回帖

更多关于 汇编语言数码管显示 的文章

 

随机推荐