专题讲座资料(2021-2022年)单片机的点阵图文显示.doc
《专题讲座资料(2021-2022年)单片机的点阵图文显示.doc》由会员分享,可在线阅读,更多相关《专题讲座资料(2021-2022年)单片机的点阵图文显示.doc(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、I摘要摘要本文阐明用单片机控制单色显示屏的方法,对 LED 显示模块单元如何进行行列信号控制及信号传输中的驱动问题进行了研究。讨论了单片机控制系统中关键的数据处理以及发送问题,结果表明采用并行数据输入、串行数据及同步时钟输出的专用电路可大大减少 CPU 的辅助时间,提高数据的发送速度。关键词关键词LED;单片机;显示屏;驱动;扫描IIA LED Display System Control Base On MCUStudent:ZHANG Tao Teacher:CHEN Xiao-qinAbstract:This text clarifies to use a singlechip cont
2、rol monochrome manifestation tohold of method,show the mold piece how the unit carry on the row or column signalcontrol and signal to deliver to the LED medium of drove a problem to research.Discussing a problem of singlechip in a control system how dose it processing the key dataand sending out,res
3、ult indicate adoption parallel communication,string data in line andsynchronous the clock outputs appropriation electric circuit can reduce CPU assistant timeconsumedly,the exaltation data sends out speed.Keywords:LED;Surface Mount Assemblies;Display;Driver;ScanIII目次目次摘要摘要.IAbstract.II1 1 引言引言.11.1
4、广告屏的现状.11.2 设计任务.11.3 数学模型.21.4 方案论证.32 2 系统硬件设计系统硬件设计.62.1 电源电路.62.2 单片机系统及外围电路.72.3 列驱动电路.92.4 行驱动电路.112.5 小结.143 3 系统软件设计系统软件设计.153.1 显示驱动程序.153.2 系统主程序.153.3 部分源程序.164 4 结论结论.20致谢致谢.21参考文献参考文献.22附录附录 1 1.23附录附录 2 2.2421 1引引 言言1.11.1 广告屏的现状广告屏的现状随着社会文化的不断发展,人们的消费标准不断改变,户外灯箱广告更是扮演着越来越重要的宣传角色,不论是汽车
5、站,火车站,股市交易市场,还是学校都离不开它,然而传统的霓虹灯广告牌不论是在显示效果、耗电量还是可修改性上都无法满足当前社会的需求,传统的霓虹灯广告亟待改进。由于单片机技术的不断发展和高亮度LED 发光管的出现使得大屏幕高亮度LED 电子广告屏成为可能,与传统的霓虹灯广告在显示效果以及可修改性上都有着无法比拟的优势,而且单片机的日益平民化以及 LED 技术的不断创新,使得高亮度高清晰的 LED点阵广告牌与传统霓虹灯广告牌的成本日益接近。另外,SMT 技术的飞速发展,开关电源的大规模使用,使其无论在体积上还是在可靠性上都比传统的霓虹灯广告有明显的优势,为其在特殊领域的应用奠定了基础。这种新兴的大
6、屏幕显示技术成为众人目光的焦点。与传统的显示设备相比,首先,LED 显示屏色彩丰富,3 基色的发光管的可以显示全彩色,显示显示方式变化多样(文字、图形、动画、视频、电视画面等)、亮度高,是集光电子技术、微电子技术、计算机技术、信息处理技术于一体的高技术产品,可用来显示文字、计算机屏幕同步的图形。其次,LED 显示屏的象素采用 LED 发光二极管,将多个发光二极管以序列的形式构成 LED 显示阵列,这种显示屏具有耗电省、成本低、亮度清晰度高、寿命长等优点,而且 LED 显示屏以其受空间限制较小,并可以根据用户要求设计屏的大小,具有全彩色效果,视角大,是信息传播设施划时代的产品。再次,LED 显示
7、屏应用广泛,金融证券、银行利率、商业广告、文化娱乐等方面,显示效果清晰稳定,越来越多的地方开始使用 LED 电子显示屏,有巨大的社会效益和经济效益。它以其超大画面、超宽视觉、灵活多变的显示方式等独居一格的优势,是目前国际上使用广泛的显示系统。1.21.2 设计任务设计任务设计一个室内用 32*64 点阵 LED 单色图文显示屏,要求在目测条件下 LED 显示屏各点亮度均匀,充足,可显示图形和文字,显示图形或文字稳定、清晰无串扰。图形或文字显示有静止和移入移出等显示方式。本文重点介绍了基于单片机系统的单色LED 显示屏的控制电路、驱动电路的设计方法,并针对一个 32x64 屏的显示特点,对其软件
8、实现的算法给出了具体的分析。31.31.3 数学模型数学模型对于点阵型 LED 显示可以采用共阴极或共阳极,本系统采用共阳极,其硬件电路如图 1.1 所示。当行上有一正选通信号时,列选端四位数据为 0 的发光二极管便导通点亮。这样只需要将图形或文字的显示编码作为列信号跟对应的行信号进行逐次扫描,就可以逐行点亮点阵。只要扫描速度大于 24Hz,由于扫描时间很快,人眼的视觉有暂留效应,就可以看到显示的是完整的图形或文字。C1LEDC3LEDC5LEDC7LEDC2LEDC4LEDC6LEDC8LEDC9LEDC11LEDC13LEDC15LEDC10LEDC12LEDC14LEDC16LED行 1
9、行 2行 3行 4列 1列 2列 3列 4图 1.1 4*4 共阳极 LED 点阵例如,若要图中所示 16 个 LED 显示一个“口”字的方框,则首先在列 1上写入列编码信号,接着应将对应的行上加选通信号,即在行、列的信号端分别加上如表1.1 所示数据:列 1列 2列 3列 4行 10000行 20110行 30110行 40000表 1.1 在点阵上所加的行信号以及列选择信号这样,当第一行选通时列信号为 0000;第二行选通时列信号为 0110;第三行选通时列信号为 0110;第四行选通时列信号为 0000;再选通第一行送列信号 0000如此循环下去,当刷新频率足够高时(大于 24Hz),由
10、于人眼的视觉暂留特性,便可观察到稳定的方框。41.41.4 方案论证方案论证从理论上说,不论显示图形还是文字,只要控制与组成这些图形或文字的各个点所在位置相对应的 LED 器件发光,就可以得到我们想要的显示结果,这种同时控制各个发光点亮灭的方法称为静态驱动显示方式。32*64 的点阵共有 2048 个发光二极管,显然单片机没有这么多端口,如果我们采用锁存器来扩展端口,按 8 位的锁存器来计算,32*64 的点阵需要 256 个锁存器。这个数字很庞大,而且成本很昂贵,我们仅仅是 32*64 的 8 个汉字点阵,在实际应用中的显示屏往往要大得多,这样在锁存器上花的成本将是一个很庞大的数字。因此在实
11、际应用中的显示屏几乎都不采用这种设计,而采用另一种称为动态扫描的显示方法。动态扫描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如 8 行)的同名列共用一套列驱动器。具体就 32*64 的点阵来说,把所有同一列的发光管的阴极连在一起,再去驱动这一列 LED(共阳接法),每一列先送出对应第 1行发光管对应的数据并锁存,再选通第 1 行使其点亮一定的时间,然后熄灭;再送出第 2 行的数据并锁存,再选通第 2 行使其点亮相同的时间,然后熄灭第 8 行之后,又重新点亮第 1 行,反复轮回。当这样轮回的速度足够快(每秒 24 次以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图
12、形了。采用扫描方式进行显示时,每行有一个行驱动器,各行的同名列共用一个列驱动器。显示数据通常存储在单片机的程序存储器中,按 8 位一个字节的形式顺序排放。显示时要把一行中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。从控制电路到列驱动器的数据传输可以采用并行方式或串行方式。采用并行方式时,32*64 的 LED 点阵有 8 列 8*8 的点阵,需要 8*8=64 个列数据输入口,而一个 89C51 只有 32 个 I/O 接口,还要同时驱动行数据,根本不够用;并且从控制电路到列驱动器的线路数量大,相应的硬件数目多,由此可以得出,当列数很多时,并行传输的方案是不可取的。采
13、用串行传输的方法,控制电路可以只用 2 根线:数据线、时钟线。将行数据一位一位传往行驱动器,在硬件方面无疑是十分经济的。但是,串行传输过程较长,数据按顺序一位一位地输出给行驱动器,只有当一行的各列数据都已传输到位之后,这一行的各列才能并行地进行显示。这样,对于一行的显示过程就可以分解成列数据准备(传输)和列数据显示两个部分。对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下,留给显示的时间就太少了,以致影响到 LED 的亮度。解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的5方法。即在显示本行数据的同时,传送下一行的数据。为了达到重叠处理的目的,列数
14、据的显示驱动电路就需要具有锁存功能。经过上述分析,可以归纳出列驱动器电路应具备的主要功能:对数据准备来说,它应能实现串入并出的移位功能;对数据显示来说,应具有并行锁存的功能。这样,本行已准备好的数据打人并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示。同时为了LED 显示的亮度,采用 8 行扫描,每个汉字上面有 2 个 16 列驱动器驱动,列驱动器的位置应该是在第 1 行跟第 9 行,即每个 16*16 的汉字点阵是有 4 个 8*8 的点阵组成的阵列,扫描的时候同时扫描显示第 1 行跟第 9 行,第二次扫描的时候显示第 2 行跟第10 行,以此类推,最后显示
15、第 8 行跟第 16 行,如图 1.2 所示:第 1 行全亮|第 2 行不亮|第 3 行不亮|第 4 行不亮|第 5 行不亮|第 6 行不亮|第 7 行不亮|第 8 行不亮|第 9 行全亮|第 10 行不亮|第 11 行不亮|第 12 行不亮|第 13 行不亮|第 14 行不亮|第 15 行不亮|第 16 行不亮|图 1.2综合上述可以看出整个点阵显示的实现电路结构应该如图 1.3 所示:6图 1.3 显示屏电路框图硬件电路大致上可以分成单片机系统及外围电路、列驱动电路和行驱动电路以及LED 点阵阵列三大部分。在实际应用中的大屏幕 LED 点阵显示屏,都是采用很多的显示模块组成,每个模块一般是
16、有 32*64 个点阵组成,每个模块负责自己那部分 LED 的显示;有电脑通过统一的协议发送数据到每个控制单片机,行选是统一的;而且控制模块也是分开的,一个控制模块上面有很多的 RAM 芯片,控制芯片接收从主控电脑发送过来的数据,并将其保存在 RAM 中,之后不需要电脑控制即可自己循环控制显示。而且一个模块控制几个至几十个 32*64 的点阵模块。72 2 系统硬件设计系统硬件设计2.12.1 电源电路电源电路本设计采用的是电脑开关电源,它的主控芯片是 TL494。TL494 是一种固定频率脉宽调制电路,它包含了开关电源控制所需的全部功能,广泛应用于单端正激双管式、半桥式、全桥式开关电源。TL
17、494 的管脚以及内部电路框图如图 2.1 所示。其引脚功能如下:图 2.1 TL494 外部管脚以及内部电路框图1、2,16、15 脚分别为 2 个误差比较放大器的同相输入端和反相输入端。3 脚为控制比较放大器和误差比较放大器的公共输出端,输出时表现为或输出控制特性,也就是就在两个放大器中,输出幅度大者起作用;当 3 脚的电平变高时,TL494 送出的驱动脉冲宽度变窄,当 3 脚电平低时,驱动脉冲宽度变宽。4 脚为死区电平控制端,从 4 脚加入死区控制电压可对驱动脉冲的最大宽度进行控制,使其不超过 180 度,这样可以保护开关电源电路中的三极管。5、6 脚分别用于外接振荡电阻和电容。7 脚为
18、接地端。8、9 脚和 11、12 脚分别为 TL494 内容末级两个输出三极管的集电极和发射8极。12 脚为电源供电端。13 脚为功能控制端。14 脚为内部 5V 基准电压输出端。我们的设计使用电脑开关电源提供的 12V,5V,3.3V 3 路电压。2.22.2 单片机系统及外围电路单片机系统及外围电路由于 LED 点阵显示屏由单片机控制部分和显示驱动部分组成,单片机我选择最常见的 ATMEL 公司的 AT89C51 单片机。此单片机与 MCS-51 产品指令系统完全兼容,由4K 字节可重擦写 Flash 闪速存储器,128*8 字节内部 RAM,32 个可编程 I/O 口线,2个 16 位定
19、时/计数器和 6 个中断源。并且该单片机经济实用,使用广泛。我们使用的是 AT89C51 的最小系统电路,包括:电源、时钟脉冲、复位电路和程序存储器设定电路,暂时只是显示很少的几十个汉字,不用外接存储扩展。2.2.12.2.1 时钟脉冲电路时钟脉冲电路AT89C51 单片机的最高时钟脉冲频率已经达到了 24MHz,它内部已经具备了振荡电路,只要在 AT89C51 的两个引脚(即 19、18 脚)连接到简单的石英振荡晶体的 2个管脚即可,同时晶体的 2 个管脚也要用 30pF 的电容耦合到地。2.2.22.2.2 复位电路复位电路89C51 的复位引脚(RESET)是第 9 脚,当此引脚连接高电
20、平超过 2 个机器周期,即可产生复位的动作。以 24MHz 的时钟脉冲为例,每个时钟脉冲为 0.5S,两个机器周期为 1S,因此,在第 9 脚上连接一个 2S 的高电平脉冲,即可产生复位动作。最简单的就是只有一个电阻跟一个电容就可可靠复位的电路,电阻一般选择 10K,电容一般选择 10F,如图 2.2 所示。图 2.2 通电瞬间复位电路92.2.32.2.3 程序及数据存储器设定程序及数据存储器设定因为单片机内部数据存储器只有 128 Byte,非常有限,运行大一点的程序就显得捉襟见肘;而且程序存储器空间也只有 4K,大一点的程序就存储不下,尤其是在存储汉字点阵信息的时候,每个汉字 32Byt
21、e,100 个汉字就到了 3.1KB,程序也只有不到1KB 的容量了。在这时候必须外接存储器来扩展,那单片机怎么知道我们当前使用的是内部程序存储器还是外部程序存储器呢?所以就需要设定单片机是使用外部程序存储器还是内部程序存储器,89C51 把 31 脚设定为此功能,如果把 31 脚接地,则采用外部程序存储器,如果把 31 脚接 VCC,则默认采用内部程序存储器。我们暂时只是显示几十个汉字研究原理,所以仅仅用内部存储器就足够了,所以把 31 脚接高电位,就仅仅使用内部的 4K 程序存储空间。如图 2.3 所示。但是在现实大屏幕显示应用中,一般要扩展 RAM,比如 HY62256A(32K*8bi
22、t RAM),因为大量的数据是有电脑传送过来的,每个单片机只是负责自己控制的一行字符,这些数据是要随时更新的,采用 RAM可以随时更新内容;而且一般的显示程序优化以后的代码 4K 也够用了。EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U789C51+5JZ24MHzC330P
23、C230PC110u+5R2SW2R110k图 2.3 89C51 的基本外部电路102.32.3 列驱动电路列驱动电路2.3.12.3.1 总体规划及实现电路总体规划及实现电路每个汉字需要 4 个 8*8 的 LED 点阵,要想实现 8 行扫描驱动,上下 2 行必须都有1 个 74HC595 接到 LED 点阵模块上,而每个汉字是按照 16*16 取模,所以需要 4 个74HC595 来驱动一个汉字,我的电路设计的是 8 个汉字,所以需要 8*4=32 个 74HC595来实现 8 行扫描显示。设计好的列驱动电路的部分如下图 2.6 所示:图 2.4 列驱动部分电路图2.3.22.3.2 串
24、入并出移位寄存器串入并出移位寄存器 74HC59574HC595列驱动电路由集成电路 74HC595 构成。它具有一个 8 位串入并出的移位寄存器和一个 8 位输出锁存器,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显示本行各列数据的同时,传送下一行的列数据,即达到重叠处理的目的。11图 2.5 74HC595 外形及内部逻辑结构图74HC595 的外形及内部结构如图 2.5 所示。它的输入端有 8 个串行移位寄存器,每个移位寄存器的输出都连接一个输出锁存器。引脚 SI 是串行数据的输入端。引脚SCK 是移位寄存器的移位时钟脉冲,在其上升沿发生移位,并将 SI 的下一个数据打入最低
25、位。移位后的各位信号出现在各移位寄存器的输出端,也就是输出锁存器的输入端。RCK 是输出锁存器的打入信号,其上升沿将移位寄存器的输出打入到输出锁存器。引脚 G 是输出三态门的开放信号,只有当其为低时锁存器的输出才开放,否则输出端为高阻状态。SCLR 信号是移位寄存器的清 0 输入端,当其为低时移位寄存器的输出全部为 0。由于 SCK 和 RCK 两个信号是互相独立的,所以能够做到输入串行移位与输出锁存互不干扰。芯片的输出端为 QAQH,最高位 QH 可作为多片 74HC595 级联应用时向上一级的级联输出。但因 QH 受输出锁存器打人控制,所以还从输出锁存器前引出了 QH,作为与移位寄存器完全
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 专题讲座 资料 2021 2022 单片机 点阵 图文 显示
限制150内