电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > DOCX文档下载
分享到微信 分享到微博 分享到QQ空间

16&amp#215;16点阵LED显示屏整个过程及C语言程序

  • 资源ID:471673179       资源大小:142.62KB        全文页数:15页
  • 资源格式: DOCX        下载积分:15金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要15金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

16&amp#215;16点阵LED显示屏整个过程及C语言程序

16X16点阵LED显示屏整个过程及C语言程序7.1 功能要求设计一个室内用16X16点阵LED图文显示屏,要求在目测条件下LED显示屏各点亮 度均匀、充足,可显示图形和文字,显示图形或文字应稳定、清晰无串扰。图形或文字显示 有静止、移入移出等显示方式。7.2 方案论证 从理论上说,不论显示图形还是文字,只要控制与组成这些图形或文字的各个点所在位 置相对应的LED器件发光,就可以得到我们想要的显示结果,这种同时控制各个发光点亮 灭的方法称为静态驱动显示方式。16X16的点阵共有256个发光二极管,显然单片机没有 这么多端口,如果我们采用锁存器来扩展端口,按8位的锁存器来计算, 16X16 的点阵需 要256/8=32个锁存器。这个数字很庞大,因为我们仅仅是16X16的点阵,在实际应用中的 显示屏往往要大的多,这样在锁存器上花的成本将是一个很庞大的数字。因此在实际应用中 的显示屏几乎都不采用这种设计,而采用另一种称为动态扫描的显示方法。动态扫描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套列驱动器。具体就16X16的点阵来说,我们把所有同一行的发光 管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接法),先送出对应第 一行发光管亮灭的数据并锁存,然后选通第一行使其燃亮一定的时间,然后熄灭;再送出第 二行的数据并锁存,然后选通第二行使其燃亮相同的时间,然后熄灭;第十六行之后 又重新燃亮第一行,这样反复轮回。当这样轮回的速度足够快(每秒 24 次以上),由于人眼 的视觉暂留现象,我们就能看到显示屏上稳定的图形了。采用扫描方式进行显示时,每行有一个行驱动器,各行的同名列共用一个列驱动器。显 示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。显示时要把一行中 各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。从控制电路 到列驱动器的数据传输可以采用并行方式或串行方式。显然,采用并行方式时,从控制电路 到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并行传输的方案是不可取的。采用串行传输的方法,控制电路可以只用一根信号线,将列数据一位一位传往列驱动器, 在硬件方面无疑是十分经济的。但是,串行传输过程较长,数据按顺序一位一位地输出给列 驱动器,只有当一行的各列数据都已传输到位之后,这一行的各列才能并行地进行显示。这 样,对于一行的显示过程就可以分解成列数据准备(传输)和列数据显示两个部分。对于串 行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下,留给行显示的 时间就太少了,以至影响到LED的亮度。解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。 即在显示本行各列数据的同时,传送下一行的列数据。为了达到重叠处理的目的,列数据的 显示就需要具有锁存功能。经过上述分析,可以归纳出列驱动器电路应具备的主要功能。对 于列数据准备来说,它应能实现串入并出的移位功能;对于列数据显示来说,应具有并行锁 存的功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以 准备下一行的列数据,而不会影响本行的显示。图7.1为显示屏电路实现的结构框图。图 7.1显示屏电路框图7.3系统硬件电路的设计硬件电路大致上可以分成单片机系统及外围电路、列驱动电路和行驱动电路三部分。7.3.1 单片机系统及外围电路单片机采用89C51或其兼容系列的芯片,采用24M或更高频率的晶振,以获得较高的 刷新频率,使显示更稳定。单片机的串口与列驱动器相连,用来送显示数据°P1 口低4位 与行驱动器相连,送出行选信号;P1.5P1.7 口则用来发送控制信号。P0和P2 口空着,在123有必要时可以扩展系统的ROM和RAMo 16X16点阵显示屏的硬件原理图如图7.2。utLEA/VPPO.OP0.1X1P0.2P0.3P0.4X2P0.5P0.6P0.7RESETP2.0P2.1INTOP2.2INT1P2.3TOP2.4T1P2.5P2.6P1.0P2J.P1.1P1.2RDP1.3WRP1.4PSENP1.5ALE/PP1.6TXDP1.7RXD87C5139373 53433322 123242526272817f16U2-01234A5B6C7D-8一_-9一_10G111G2121314图7.216X 16点阵显示屏硬件原理图TitleSize Number7.3.2列驱动电路A4Date:File:9-Jan-2004F:tempMyDesign.ddbRevisionSheet ofDrawn By:4列驱动电路由集成电路74HC595构成,它具有一个8位串入并出的移位寄存器和一个8 位输出锁存器的结构,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显 示本行各列数据的同时,传送下一行的列数据,即达到重叠处理的目的。74HC595的外形及内部结构如图7.3所示。它的输入侧有8个串行移位寄存器,每个移 位寄存器的输出都连接一个输出锁存器。引脚SI是串行数据的输入端。引脚SCK是移位寄 存器的移位时钟脉冲,在其上升沿发生移位,并将SI的下一个数据打入最低位。移位后的 各位信号出现在各移位寄存器的输出端,也就是输出锁存器的输入端。 RCK 是输出锁存器 的打入信号,其上升沿将移位寄存器的输出打入到输出锁存器。引脚G是输出三态门的开 放信号,只有当其为低时锁存器的输出才开放,否则为高阻态oSCLR信号是移位寄存器的 清零输入端,当其为低时移位寄存器的输出全部为零。由于SCK和RCK两个信号是互相独 立的,所以能够做到输入串行移位与输出锁存互不干扰。芯片的输出端为QAQH,最高 位QH可作为多片74HC595级联应用时,向上一级的级联输出。但因QH受输出锁存器打 入控制,所以还从输出锁存器前引出了 QH',作为与移位寄存器完全同步的级联输出。acGDQE QF QGQHGIND图7.374HC595外形及内部逻辑结构图 7.3.3行驱动电路单片机P1 口低4位输出的行号经4/16线译码器74LS154译码后生成16条行选通信号 线,再经过驱动器驱动对应的行线。一条行线上要带动16列的LED进行显示,按每一 LED 器件20mA电流计算,16个LED同时发光时,需要320mA电流,选用三极管8550作为驱 动管可满足要求。7.4系统程序的设计显示屏软件的主要功能是向屏体提供显示数据,并产生各种控制信号,使屏幕按设计的 要求显示。根据软件分层次设计的原理,我们可把显示屏的软件系统分成两大层:第一层是 底层的显示驱动程序,第二层是上层的系统应用程序。显示驱动程序负责向屏体送显示数据, 并负责产生行扫描信号和其它控制信号,配合完成LED显示屏的扫描显示工作。显示驱动 程序由定时器T0中断程序实现。系统应用程序完成系统环境设置(初始化)、显示效果处 理等工作,由主程序来实现。从有利于实现较复杂的算法(显示效果处理)和有利于程序结构化考虑,显示屏程序适 宜采用C语言编写。7.4.1 显示驱动程序显示驱动程序在进入中断后首先要对定时器 T0 重新赋初值以保证显示屏刷新率的稳定,1/16 扫描的显示屏的刷新率(帧频)的计算公式如下:1 1 f式 7-1 其中刷新率(帧频)二一XT溢出率二X1一16 o16 12(65536 -1 )0fosc为晶振频率,t0为定时器T0初值(工作在16位定时器模式)。然后显示驱动程序查询当前燃亮的行号,从显示缓存区内读取下一行的显示数据,并通 过串口发送给移位寄存器。为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关 闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显 示。图7.4 为显示驱动程序(显示屏扫描函数)流程图。图 7.4 显示驱动程序流程图图 7.5 系统主程序流程图7.4.2 系统主程序 系统主程序开始以后首先是对系统环境初始化,包括设置串口、定时器、中断和端口。然后以“卷帘出”效果显示一个图形(),停留约3秒,接着向上滚动显示“我爱单片机 ”五个汉字及一个图形,停留约3秒,再向左跑马显示“我爱单片机”这五个汉字及一 个图形,然后以“卷帘入”效果隐去图形()由于单片机没有停机指令,所以我们可以 设置系统程序不断地循环执行上述显示效果。图7.5 是系统主程序的流程图。7.5调试及性能分析LED 显示屏硬件电路只要器件质量可靠,管脚焊接正确,一般无需调试即可正常工作 软件部分需要调试的主要有显示屏刷新频率及显示效果两部分。显示屏刷新率由定时器T0 的溢出率和单片机的晶振频率决定,表7.1给出了实验调试时采用的频率及其对应的定时器 T0 初值。表7.1显示屏刷新率(帧频)与TO初值关系表(24M晶振)刷新率(Hz)255062.57585100120T0初值0xec780xf63c0xf8300xf97e0xfa420xfb1e0xfbee从理论上来说,24Hz以上的刷新率就能看到连续稳定的显示,刷新率越高,显示越稳 定,同时刷新率越高,显示驱动程序占用的CPU时间也越多。实验证明,在目测条件下刷 新率40Hz以下的画面看起来闪烁较严重,刷新率50Hz以上的已基本觉察不出画面闪烁, 刷新率达到85Hz以上时再增加画面闪烁将没有明显改善。显示效果处理程序的内容及方法非常广泛,其调试过程在此不作具体讨论,读者可对照 源程序自行分析。这个方案设计的16X16点阵LED图文显示屏,电路简单,成本较低,且较容易扩展成 更大的显示屏;显示屏各点亮度均匀、充足;显示图形或文字稳定、清晰无串扰;可用静止、 移入移出等多种显示方式显示图形或文字。7.6控制源程序清单以下是16X16点阵LED电子显示屏的源程序,分别采用C及汇编编写,C程序在Keil uVision2 V2.30 (C51.exe V7.0)环境下调试通过。/*16X16 点阵 LED 显示屏程序MCU AT89C51 XAL 24MHzBuilde by Gavin Hu, 2003.8.15 */ #include <reg51.h>#define BLKN 2/列锁存器数sbit G = 0x97;/P1.7 为显示允许控制信号端口sbit RCLK = 0x96;/P1.6 为输出锁存器时钟信号端sbit SCLR = 0x95;/P1.5为移位寄存器清O端void delay(unsigned int);/延时函数unsigned char data dispram32; /显示缓存 /*主函数 void main(void) */ void main(void)unsigned char code Bmp32= 字模表0xF9,0xBF,0xC7,0xAF,0xF7,0xB7,0xF7,0xB7,0xF7,0xBF,0x00,0x01,0xF7,0xBF,0xF7,0xB7, 0xF1,0xD7

注意事项

本文(16&amp;amp#215;16点阵LED显示屏整个过程及C语言程序)为本站会员(M****1)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.