ImageVerifierCode 换一换
格式:DOC , 页数:42 ,大小:1.01MB ,
资源ID:5597128      下载积分:12 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/5597128.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(基于单片机控制动态扫描文字显示系统的设计.doc)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

基于单片机控制动态扫描文字显示系统的设计.doc

1、基于单片机控制动态扫描文字显示系统的设计 摘要:随着社会文化的不断发展,LED显示系统扮演着越来越重要的宣传角色,不论是汽车站,火车站,股市交易市场,还是学校都离不开它,然而传统的霓虹灯广告牌不论是在显示效果、耗电量还是可修改性上都无法满足当前社会的需求,传统的霓虹灯广告亟待改进 本文介绍了基于AT89S52单片机控制的8x32 LED点阵动态扫描文字显示的设计过程。首先本文对LED点阵模块显示器原理做了介绍,同时分析了动态扫描文字显示系统的工作原理,然后对AT89S52单片机做了简要介绍。经过分析,设计出能实现动态扫描文字显示系统的硬件原理图和软件流程图。最后利用Proteus仿真软

2、件对该系统进行仿真,达到了预期效果。 关键词:单片机;点阵;LED显示屏;Proteus A Design of Dynamic Scanning Text Display System Abstract:With the continuous development of social culture, LED display systems play an increasingly important role in advocacy, whether bus, train stations, stock mar

3、ket, or the school can not do without it, but the traditional neon signs, whether in Display, or can modify the nature of the power can not meet the current needs of the community to be desired conventional neon. This paper introduces the design procedure of a dynamic scanning text display system o

4、f 8x32 LED dot matrix based on AT89S52 MCU control. Firstly this paper introduces the LED dot matrix modules, and analysis the working principle of the dynamic scanning text display system. And then this paper briefly introduces AT89S52 MCU. After analysis, this paper give out the dynamic scanning t

5、ext display system’s hardware and software. Finally, using the Proteus simulation software to simulate for the system, and achieved the desired effect. Keyword: MCU , dot matrix , LED , Proteus 目 录 1 引言 1 1.1 国内外研究状况 1 1.2 本课题的主要内容、要求及说明书安排 2 2 系统结构及硬件电路设计 4 2.1 系统的结构框图及工作

6、原理 4 2.2 电源管理模块 4 2.3 单片机模块 5 2.3.1 单片机技术简介 5 2.3.2 AT89S52单片机最小系统 6 2.4 LED点阵显示模块 7 2.4.1 LED点阵显示屏研究背景 8 2.4.2 LED点阵显示屏概述 9 2.5 LED点阵驱动模块 10 2.5.1 LED显示屏控制技术 10 2.5.2 行扫描驱动 11 2.5.3 列扫描驱动 12 2.5.4 扫描显示工作过程 14 3 软件设计 16 3.1 Keil技术简介 16 3.2 主程序流程 17 3.3 端口初始化程序设计 20 3

7、4 显示RAM初始化子程序设计 20 3.5 显示子程序设计 21 3.6 显示移动程序设计 23 4 软件仿真 24 4.1 Proteus技术简介 24 4.2 Proteus 7.5 SP3 简介 24 4.3 仿真流程 25 4.3.1 添加元件到元件列表中 25 4.3.2 放置元件 27 4.3.3 连线 27 4.3.4 添加仿真文件 28 4.3.5 仿真 29 结论 31 附录A 32 参 考 文 献 37 致 谢 39 第 II 页 共 II 页 1 引言 1.1 国内外研究状况 现代信息显示技术的发展

8、形成了CRT、LCD、PDP、LED、EL、DLP等系列的信息显示产品。纵观各类显示产品的发展,14英寸以下是LCD占主导地位,14英寸-32英寸是以CRT为主导,40英寸-70英寸甚至100英寸将是PDP的市场,100英寸以上,无论是室内还是室外,LED显示屏以绝对的优势成为主流产品[1]。 我国经济发展迅猛,对信息传播有越来越高的要求.可以相信,LED电子显示屏以其色彩鲜亮夺目、大的显示信息量、寿命长、耗电量小、重量轻、空间尺寸小、稳定性高、易于操作、安装和维护等特点,将在社会经济发展中扮演越来越重要的角色[2]。 LED显示屏可以显示变化的数字、文字、图形图像;其不仅可以用于室内环

9、境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点[3]。 从应用角度上看,LED的主要市场在于照明、显示和背光源。与照明与背光源相比,LED显示方面的应用市场已经基本成熟,国内外研究状况与水平大致相似,目前由于LED显示屏造价昂贵,主要应用于比较高档的场所,主要集中在城市的繁华场所,作为多媒体广告的一部分。但双色LED显示屏主要应用于交通、高速公路,银行、证券交易等金融场所[4]。 对于安装在户外的LED广告牌,首页需要注意的就是结构的设计。安装结构应该考虑到:抗风、抗震、承载等主要因素;其次是屏体的形状、结构、外装饰设计应该和所依附的建筑或环境相协调;再者,就是考虑当地

10、的环境因素,比如空气湿度、空气盐碱含量等[5]。 LED显示屏采用了低电压扫描驱动,具有视角大、可视距离远、防水、规格品种多等优点,可以满足不同应用场景的需求,其应用涉及社会经济的许多领域,主要有以下几个方面: 1、道路交通信息显示。LED显示是道路交通诱导系统主要发布载体,显示手段传统上以LED和CRT为主,近年来发展迅速,系统与客运自动化系统联网,表现出优良的智能化水平;道路交通诱导系统正在迅速兴起,处于发展和完善过程中,由于道路交通的环境特点,LED显示成为主要的信息显示手段[6]。 2、广告媒体新产品。除单一大型户内、户外显示屏作为广告媒体外,国内城市出现了集群LED显示屏广告系

11、统;商业大厦LED显示屏广告发布系统也已在全国中大城市主要地方得到采用并正在推广[7]。 3、证券交易、金融信息显示。这一领域的LED显示屏占到前几年国内LED显示屏需求量的50%以上,目前仍为LED显示屏的主要需求行业,全国上万家证券、金融营业机构广泛使用了LED显示屏。 4、邮政、电信、商场购物中心等服务领域的业务宣传及信息显示。遍布全国的服务领域均有国产LED显示屏在信息显示方面发挥作用。 5、机场航班、汽车站动态信息显示与港口车站旅客引导信息显示[8]。 6、展览和租赁。在许多展览会,LED显示大屏幕作为展览组织者提供的重要服务内容之一向参展商提供有偿服务,国外还有一些较大

12、的LED大屏幕的专业性租赁公司,也有规模较大的制造商提供租赁服务[9]。 7、学校和医院。在高等院校应用LED显示屏作为现代化教育工具,用做学校信息宣传工具;在医院主要用来宣传药品价格和健康知识。 LED广告牌广泛涉及了计算机及电子技术中的电源技术、单片机技术、数据通讯技术、显示技术、存储技术、系统软件技术、接口及驱动等技术。易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定。它的控制系统均是基于嵌入式微处理器开发,所以单片机在其中也占有一席之地[10]。 1.2 本课题的主要内容、要求及说明书安排 1.2.1 主要内容、要求 研究基于单片机控制动态扫描文字显示系统的工作原理,

13、选用合适的单片机控制LED点阵模块显示器,运用动态扫描的原理和特点,设计相应的硬件电路,并配合相应的软件编程,使用Proteus仿真软件和伟福仿真软件,实现动态扫描文字显示。 工作内容: (1) 掌握LED文字显示系统的工作原理; (2) 掌握一种单片机应用,如AT89S52; (3) 掌握Keil程序设计软件; (4) 掌握Proteus仿真软件。 工作要求: (1) 设计相应的硬件电路; (2) 编写相应的软件程序; (3) 使用Proteus仿真软件,实现动态扫描文字显示; 1.2.2 说明书安排 本文详细介绍了一种8x32的点阵LED文字显示屏系统的设计。共分为

14、五章,内容安排如下: 第一章:介绍了研究背景及利用到的主要技术。 第二章:概括介绍了系统结构和工作原理,同时具体介绍了系统的硬件设计,详细介绍了整个系统的各个模块的电路设计、器件选型及理由。 第三章:具体介绍了单片机程序的设计。 第四章:具体介绍了如何利用Proteus进行系统仿真。 第五章:总结了本次毕业设计取得的成果和心得 2 系统结构及硬件电路设计 2.1 系统的结构框图及工作原理 AT89S52最小系统 驱动模块 电源模块 显示模块 图2.1 系统结构框图 本系统采用单片机AT89S52为LED显示屏的控制核心,系统主要由四个模块:电源模块、AT89

15、S52最小系统、LED驱动模块、LED点阵显示模块构成: 1、电源模块作为整个系统的各个模块提供稳定的电源。 2、AT89S52最小系统作为控制系统,控制着整个系统的功能实现。 3、LED驱动模块为LED点阵显示模块提供驱动和以及与单片机的控制接口。 4、LED点阵显示模块用来显示文字效果。 2.2 电源管理模块 本系统中芯片的工作电压有5V。可以利用外部9V电池然后利用7805进行电压调整获得5V稳定电压值。 7805为3 端正稳压电路,提供固定的输出电压,应用范围广。内含过流、过热和过载保护电路。带散热片时,输出电流可达1A。虽然是固定稳压电路,但使用外接元件,可获得不同的

16、电压和电流。 其主要特点如下: l 输出电流可达1A l 输出电压有:5V l 过热保护 l 短路保护 l 输出晶体管SOA 保护 l 其TO-220封装结构如图2.2所示 图2.2 7805封装结构图 图2.3 5V电源模块图 在图2.3中,D1为电源指示灯,用以指示电源正常工作。图中C1电源滤波电容,稳定电源电压,亦为抗冲击电容,防止上电时产生的冲击电压过大而影响后续电路。C2为去耦电容,防止干扰信号返回电源影响其正常。 2.3 单片机模块 2.3.1 单片机技术简介 单片机简称单片微型计算机,是典型的嵌入式微控制器(M

17、icrocontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统,使得计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳[11]。 单片机是靠程序运行的

18、并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板,但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别,因为单片机的只要通过编写程序就可以可以实现高智能,高效率,以及高可靠性[12]。 单片机的应用: 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过

19、程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师[13]。 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域。 2.3.2 AT89S52单片机最小系统 本设计的的单片机采用Atmel公司的AT89S52。 AT89S52 是一种低功耗、高性能 CMOS8 位微控制器,具有8K 在系

20、统可编程 Flash 存储器。使用 Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容。片上 Flash 允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得 AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案[14]。 AT89S52 具有以下标准功能: 8k 字节 Flash,256 字节 RAM,32 位 I/O 口线,看门狗定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S5

21、2 可降至 0Hz 静态逻辑操作,支持 2 种软件可选择节电模式。空闲模式下,CPU停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止[15]。 AT89S52最小系统包括晶体振荡电路、复位开关和电源部分。电源部分有电源模块提供稳定的电压。图2.4为AT89S52的最小系统原理图。 图2.4 AT89S52单片机最小系统 如图2.4 所示C4、C5、X1组成晶体振荡电路连接到单片机的XTAL1、XTAL2引脚上。C3、R11和按键开关组成复位电路连接到单片机的RST引脚上。

22、 2.4 LED点阵显示模块 经测试Proteus的Multiplexed LED Display Model为如图2.5所示的结构。图2.5是一种8x8的LED点阵单色行共阴模块的内部结构图。一般情况下LED点阵其单点工作电压Uf为1.8 V,正向电流露为8~10 mA。当某一列线为高电平而某一行线为低时,其行列交叉的点就被点亮;而当其某一列线为低时,其行列交叉的点为暗;当某一行线为高电平时,无论列线如何,对应这一行的点全部为暗。 图2.5 列共阴8x8点阵显示模块内部结构图 用四个8x8点阵显示可构成8x32点阵显示模块,其连接方法如图2.6所示。四个模块的行选线连接在一起形成

23、8行,每行32列的显示模块 图2.6 8x32点阵显示模块 2.4.1 LED点阵显示屏研究背景 LED点阵显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕,是一种简单的汉字显示器。它具有发光效率高、价廉、易于控制、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点,可广泛应用于如车站、码头、银行、学校、火车、公共汽车显示等各种公共场合的信息发布和广告宣传。LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面[16]。 2.4.2 LE

24、D点阵显示屏概述 LED显示屏(LED Display):又叫电子显示屏或者飘字屏幕。是由LED点阵组成,通过红色或绿色灯珠的亮灭来显示文字、图片、动画、视频,内容可以随时更换,各部分组件都是模块化结构的显示器件。通常由显示模块、控制系统及电源系统组成。显示模块由LED灯组成的点阵构成,负责发光显示;控制系统通过控制相应区域的亮灭,可以让屏幕显示文字、图片、视频等内容,恒舞动卡主要是播放动画的;电源系统负责将输入电压电流转为显示屏需要的电压电流[17]。 LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。

25、 LED之所以受到广泛重视而得到迅速发展,是与它本身所具有的优点分不开的。这些优点概括起来是:亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展[18]。 LED显示屏性能超群: 1、 发光亮度强 在可视距离内阳光直射屏幕表面时,显示内容清晰可见. 2、 超级灰度控制具有1024-4096级灰度控制,显示颜色16.7M以上,色彩清晰逼真,立体感强. 3、 静态扫描技术 采用静态锁存扫描方式,大功率驱动,充分保证发光亮度. 4、 自动亮度调节 具有自

26、动亮度调节功能,可在不同亮度环境下获得最佳播放效果. 5、 全天候工作 完全适应户外各种恶劣性环境,防腐,防水,防潮,防雷,抗震整体性能强、性价比高、显示性能好,像素筒可采用P10mm、P16mm等多种规格. 6、先进的数字化视频处理,技术分布式扫描,模块化设计/恒流静态驱动,亮度自动调节, 超高亮纯色象素。 7、 影像画面清晰、无抖动和重影,杜绝失真。 8、 视频、动画、图表、文字、图片等各种信息显示、联网显示、远程控制.LED的色彩与工艺 2.5 LED点阵驱动模块 2.5.1 LED显示屏控制技术 显示屏的控制系统包括输入接口电路、信号控制、转换和数字化处理电路及输

27、出接口电路等,涉及的具体技术很多,其关键技术包括串行传输与并行传输技术、动态扫描与静态锁存技术、自动检测及远程控制技术等[19]。 1、串行传输与并行传输技术 LED显示屏的数据传输方式主要有串行和并行两种。日前普遍采用串行控制技术,显示屏每个单元内部的不同驱动电路和各级联单元之间,每个时钟仅传送一位数据。采用这种方式的驱动IC种类较多,不同显示单元之间的联线较少,可减少显示单元的数据传输驱动元件,从而提高整个系统的可靠性和性价比,具体工程实现也较为容易[20]。 2、动态扫描与静态锁存技术 LED显示屏控制系统实现显示信息的刷新技术有动态扫描和静态锁存两种方式。一般室内显示屏多采用动

28、态扫描技术,即一行发光二极管共用一行驱动寄存器,根据共用一行驱动寄存器的发光二极管像素数目,分为1/4,1/16扫描等。室外显示屏基本上采用静态锁存技术,即每一个发光一极管都对应有一个驱动寄存器,无需时分工作,从而保证了每一个发光一极管的亮度占空比为100%。动态扫描法可以大大减少控制器的I/O口,因此应用较广[21]。 由上所述,本设计中LED显示屏驱动电路的设计应与所用控制系统相配合。驱动可采用静态锁存型驱动及动态扫描型二大方案。 方案一:采用静态锁存方式,将每一个LED发光管的一端接至单片机的一个I/O口,另一端通过电阻接电源。这种方法可以直接驱动LED,原理简单,驱动能力强,LED

29、的亮度也可以通过限流电阻调节,非常方便,但此种方法太浪费单片机的I/O口,只适合于较小的系统。 方案二:采用动态扫描方式,通过三极管驱动并联在一起的LED发光管的一端(共阴或共2端),LED发光管的另一脚接通用I/O口,控制其亮灭。该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。 比较以上两种方案,本系统设计中采用方案二——动态扫描型驱动电路。 动态扫描型驱动方式是指显示屏上的8行发光二极管共用一组列驱动寄存器,然后通过行驱动管的分时工作.来使每行LED的点亮时间占总时间的1/16。只要每行的刷新速率大于50 Hz,利用人眼的视觉暂留效应。人们就可以看到一幅完整的文字或画

30、面。 AT89S52单片机有四个I/O口(P0、P1、P2、P3)。每个I/O口有8位,如果都采用并行输出,显然不能满足要求。因此,本设计中的行扫描驱动采用并口输出,而场扫描驱动采用串口输出。即利用了所谓的串行传输与并行传输技术. 2.5.2 行扫描驱动 由于8x32点阵显示器有8行,为充分利用单片机的接口。本系统使用AT89S52的P1口作为行选择输出。同一个时刻只有一个端口位有效,这样有8个不同的端口位就会形成8种不同的输出状态,然后使每种状态只控制一路输出,即会有8路输出[22]。 如果一行32点全部点亮。则通过P1口的电流将达320 mA,而实际上,P1端口提供不了足够的吸收

31、电流来同时驱动32个LED同时点亮,因此,P1端口的每一路输出端与8x32点阵显示器对应的每一行之间用一个三极管来将电流信号放大。本系统选用的是最大耐压为100V,最大连续电流为5A的达林顿三极管TIP122。由上述介绍,行扫描驱动电路原理图如图2.7所示。这样,P1端口某一输出引脚为高电平时,对应的三极管导通,从而使LED点阵显示器的对应行也为低电平。图2.7中R1为限流电阻,R10是为了保证在P1端口输出低电平,三极管截止时能够保证集电极有效地高电平[23]。 图2.7 行扫描驱动 2.5.3 列扫描驱动 本系统列扫描驱动电路的设计可用串入并出的通用集成电路74HC595来作

32、为数据锁存[24]。74HC595是一个八位串行输入三态并行输出的移位寄存器,其管脚见图2.8所示,其中SI是串行数据的输入端,RCK是存储寄存器的输入时钟,SCK是移位寄存器的输入时钟, Q7H是串入数据的输出,G是对输入数据的输出使能控制,QA~QH为串入数据的并行输出,其个引脚详细描述如表2.1所示。 图2.8 74HC595引脚结构图 表2.1 74HC595引脚功能说明 从SI口输入的数据可在移位寄存器的SCK脚上升沿的作用下输入到74HC595中.并在RCK脚的上升沿作用下将输入的数据锁存在74HC595中,这样,当G为低电平时,数据便可并行输出。本系统使用P

33、2端口模拟串口来分别输出串行数据、移位时钟SCK、存储信号RCK和并行输出的使能信号G。 表2.2 74HC595最大限定范围 由表2.2所示的最大限定范围中得知74HC595的输出断电流最大为35mA,足够满足单个LED的驱动显示,同时输出端电压也满足功能要求。由此可以把74HC595的输出直接连接到点阵LED显示模块的列线上[25]。 在Proteus中74HC595串行数据引脚为DS、移位时钟SH_CP, 存储信号ST_CP, 并行输出的使能信号/OE,复位信号/MR。如图2.9所示为列显示驱动的原理图,数据从P2.1输出,经过U1的DS引脚进入然后经过8

34、个SH_CP脉冲从U1的Q7’输出到U4的DS,数据以同样的方式进入到后面的3个74HC595中。最后驱动一个ST_CP脉冲把输入的数据锁存在74HC595中,从Q0~Q7输出到点阵LED显示模块的列线上。 图2.9 列扫描驱动原理图 2.5.4 扫描显示工作过程 将4片74HC595进行级连,共用一个移位时钟SH_CP及数据锁存信号ST_CP。这样,当第一行需要显示的数据经过4x8=32个SH_CP时钟后便可将其全部移入74HC595中。此时还将产生一个数据锁存信号RCK将数据锁存在74HC595中。并在使能信号/OE的作用下.使串入数据并行输出。从而使与各输出位对应的列选线驱

35、动处于高电平或截止状态;同时由行扫描控制电路产生信号使第一行扫描管导通,相当于第一行LED的负端都接地,显然,第一行LED管的亮灭就取决于74HC595中的锁存信号;此外,在第一行LED管点亮的同时,再在74HC595中移入第二行需要显示的数据,随后将其锁存,同时由行扫描控制电路将第一行扫描管关闭而接通第二行,使第二行LED管点亮,以此类推,当第八行扫描过后再回到第一行,这样,只要扫描速度足够高,就可形成一幅完整的文字或图像[26]。 3 软件设计 3.1 Keil技术简介 Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C

36、语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻[27]。 单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出

37、Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。运行Keil软件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。掌握这一软件的使用对于使用51系列单片机的爱好者来说是十分必要的,如果你使用C语言编程,那么Keil几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。

38、 1. 系统概述 Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。下面详细介绍Keil C51开发系统各部分功能和使用[28]。 2. Keil C51单片机软件开发系统的整体结构 C51工具包的整体结构,uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。

39、开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及C51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中[29]。 本系统的单片机程序利用Keil uVision V4.02进行程序设计,如图3.1。 图3.1 keil下程序设计 以下介绍整个系统的程序流程,具体程序参见附录A。 3.2

40、 主程序流程 开始 变量定义 端口初始化 Count=N? No Yes RAM数据移位 显示RAM初始化 显示子程序 Count=0 Count++ 图3.2 主程序流程图 如3.2所示图所示为单片机的主程序流程图,用以实现四个8x8点阵构成的8x32点阵显示模块的动态扫描控制。每个文字占一个8x8点阵,由此可以同时显示四个文字。但是利用文字的移动,可以实现显示超过四个文字的动态扫描文字显示系统[30]。 在本系统中,在AT89S52单片机中为显示文字开辟了6x8Byte的显示RAM。如表3.1所示为显示位置与显示RAM的关系。在显示R

41、AM初始化的过程中,显示RAM中共保存了需要显示的6个文字扫描代码,其中: l Ram[0][0]~ Ram[0][7]为第一块8x8LED点阵显示的列扫描代码; l Ram[1][0]~ Ram[1][7]为第二块8x8LED点阵显示的列扫描代码; l Ram[2][0]~ Ram[2][7]为第三块8x8LED点阵显示的列扫描代码; l Ram[3][0]~ Ram[3][7]为第四块8x8LED点阵显示的列扫描代码; l Ram[4][0]~ Ram[4][7]为第五块8x8LED点阵显示的列扫描代码; l Ram[5][0]~ Ram[5][7]为第六块8x8LED点阵显示

42、的列扫描代码; 虽然有6块8x8LED点阵显示代码,但是只有Ram[0][]、Ram[1][]、Ram[2][] 、Ram[3][]能够被显示,其余的通过Ram数据的移位来达到显示效果。例如:在本系统中通过Ram数据的整体左移来显示所有的数据。在图3.1的主程序流程图中显示子程序用以实现Ram[0][]、Ram[1][]、Ram[2][]、Ram[3][]数据的显示,Ram数据移位过程用以实现数据的整体移位。 表3.1 显示RAM示意 Ram[0][0] Ram[1][0] Ram[2][0] Ram[3][0] Ram[4][0] Ram[5][0] Ram[0][1]

43、Ram[1][1] Ram[2][1] Ram[3][1] Ram[4][1] Ram[5][1] Ram[0][2] Ram[1][2] Ram[2][2] Ram[3][2] Ram[4][2] Ram[5][2] Ram[0][3] Ram[1][3] Ram[2][3] Ram[3][3] Ram[4][3] Ram[5][3] Ram[0][4] Ram[1][4] Ram[2][4] Ram[3][4] Ram[4][4] Ram[5][4] Ram[0][5] Ram[1][5] Ram[2][5] Ram[3][5] Ram

44、[4][5] Ram[5][5] Ram[0][6] Ram[1][6] Ram[2][6] Ram[3][6] Ram[4][6] Ram[5][6] Ram[0][7] Ram[1][7] Ram[2][7] Ram[3][7] Ram[4][7] Ram[5][7] 显示区 非显示区 3.3 端口初始化程序设计 开始 行选端口初始化 74HC595初始化 结束 图3.3 端口初始化流程图 图3.3所示为AT89S52的端口初始化流程图,其中行选端

45、口(P1)初始化使所有的行选无效。74HC595初始化使74HC595的数据端口位高电平,时钟端口位低电平无效,输出使能为无效,复位无效。 3.4 显示RAM初始化子程序设计 开始 结束 变量定义 行j=0 j<8? Ram[0][]=中[] Ram[1][]=北[] Ram[2][]=N[] Ram[3][]=U[] Ram[4][]=C[] Ram[5][]=0 Y N 图3.4 显示RAM初始化 图3.4为显示RAM的初始化过程,首先进行变量定义,然后进入循环初始化的过程。j代表行,总共8行数据,每行有6x8Byte的数据。在默认的时候

46、系统要实现在LED点阵显示屏上显示“中北NUC ”,所以在这里把“中北NUC ”代码存入显示RAM中。 3.5 显示子程序设计 图3.5为LED点阵的显示子程序,首先进行变量定义,然后进入循环扫描行列代码过程。j代表行,总共8行数据,从第0行开始到第7行。i代表列,总共显示4个显示列块,每个列块1个字节的数据(即8个点)。由于列代码为串行输出给74HC595,所以在列代码扫描循环中,需要使用小循环进行列代码的移位输出。列代码数据输出结束后使74HC595输出三态,然后锁存列代码数据,接着输出行代码数据,最后打开74HC595,这样就能在显示上一个数据的同时变化行列代码数据,提高了扫描程序

47、的效率。 结束 行j=0 行扫描结束? 输出行扫描码 Y N 列i=3 列扫描结束? N 移位输出列扫描码 Y 列扫描码锁存 列扫描码输出使能 列扫描码输出禁止 变量定义 开始 图3.5 显示RAM初始化子程序 3.6 显示移动程序设计 主程序循环 Count=N? No Yes RAM数据移位 Count=0 Count++ 图3.6 显示移动程序 本系统的利用4个LED点阵块显示6个点阵块的数据,故采用移动的方式来显示。首先在主程序循环后,进入移动判断,即判断Count是否等于N(N

48、为移动的延时控制字)。当Count=N时进入RAM数据移位子程序。如图3.7所示,j代表行,总共8行数据,每行有6x8Byte的数据。i代表显示块。在显示RAM移动子程序中实现整个RAM数据的数据整体左移一位。 开始 结束 j=8 No Yes i=0 数据位左移 j=0 i=5 Yes No 图3.7 显示RAM移动子程序 4 软件仿真 4.1 Proteus技术简介 Proteus软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿

49、真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多

50、种编译器。 Proteus软件提供了丰富的资源: (1)Proteus可提供的仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。 (2)Proteus可提供的仿真仪表资源:示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。理论上同一种仪器可以在一个电路中随意的调用。 (3)除了现实存在的仪器外,Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。这些都尽可

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服