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

加入VIP,免费下载
 

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

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

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(LED广告牌的单片机控制系统毕业设计Word格式文档下载.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

LED广告牌的单片机控制系统毕业设计Word格式文档下载.docx

1、 图1-1出租车后的LED广告牌 图1-2公交车内的LED显示屏 图1-3出租车顶棚的LED广告牌 图1-4大巴车后的LED广告牌第二章 系统硬件设计2.1硬件系统总体设计方案 要显示中文字,需要4片88的点阵显示器组合成1616的点阵显示器才能完整的显示一个中文字。如图2-1为整个系统的电路框架图。 图2-1 显示电路框架图 从理论上讲,只要控制与组成这些图形或文字的各个所在位置相对应的器件发光,就可以得到想要的显示结果,这种同时控制各个发光点亮灭的方法称为静态驱动显示方式。把行列总线接在单片机的I/0口,然后把上面分析到的扫描代码送入总线,就可以得到显示的汉字了。但是若将LED点阵的行列端

2、口全部直接接入89C52单片机,则需要使用32条I/0口,这样会造成I/0口资源的耗尽,系统也再无扩充的余地。因此,我们在实际应用中只是将LED点阵的16条行线直接接在P0口和P2口,至于列选扫描信号则是由416线译码器74HCl54来选择控制,这样一来列选控制只使用了单片机的4个I/O口,节约了很多I/O口资源,为单片机系统扩充使用功能提供了条件。 本设计中,汉字扫描显示的基本过程是这样的:单片机89C52按照设定的程序在P0和P2接口输出与内部汉字对应的代码电平送至LED点阵的行选线(高电平驱动),同时在P1.1,P1.2,P1.3,P1.4接口输出列选扫描信号(低电平驱动),即轮流给行信

3、号输出低电平,当高电平与低电平接通,则该发光二极管亮。在任意时刻只有一行发光二极管是处于可以被点亮的状态 ,其它行都处于熄灭状态。利用人眼的视觉暂留特性合成整个汉字的显示。再改变取表地址实现汉字的滚动显示。2.2 STC89C52单片机选用 2.2.1STC89C52单片机的特性 STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU ,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 以下为STC89C52单片机的引脚图和实物图。 图2-2单片机STC89C52引脚图 图2-3单片机ST

4、C89C52实物图 STC89C52具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。2.3单片机最小系统 一般来说,单片机的最小系统包括电源,晶振,复位电路。有了以上三块内容,单片机就能够工作了。另外要注意的一点是,EA脚也要接高电平,告诉单片机不

5、使用片外存储器,这样单片机系统才会老老实实地执行我们所烧写进去的程序。2.2.1时钟晶振电路 单片机XTAL1脚和XTAL脚是外部接晶振的两个引脚,通常在接一个晶振的同时要在晶振的两个脚接两个电容,这两个电容叫晶振的负载电容,分别接在晶振的两个脚上和对地的电容,一般在几十皮法。它会影响到晶振的谐振频率和输出幅度,使晶振频率更加稳定。本设计中,单片机晶振采用12MHz的频率,以获得较高的刷新率,使显示更加稳定。如图2-4所示为单片机的时钟晶振电路原理图。图2-4单片机的时钟电路2.3.2复位电路 本设计采用上电复位的方式实现复位。上电复位电路由电容串联电阻构成,由图3-4所示,并结合“电容电压不

6、能突变”的性质,可以知道:当系统一上电,RST脚将会出现高电平,这个高电平持续的时间由电路的RC值来决定。典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位。所以我们只要适当组合RC的取值就可以保证可靠的复位。一般文献推荐C 取10uF,R取8.2K。本设计中我们采用C取10u法拉,R取10K欧姆。如图2-5为单片机的复位电路原理图。图2-5单片机复位电路2.4 列驱动 2.4.1 74HC154芯片的特性 74HC154是一款高速CMOS器件,74HC154引脚兼容低功耗肖特基TTL(LSTTL)系列。 74HC154译码器可接受4位高有效二进制地址输入,并提供16个互斥的低有效

7、输出。74HC154的两个输入使能门电路可用于译码器选通,以消除输出端上的通常译码“假信号”,也可用于译码器扩展。该使能门电路包含两个“逻辑与”输入,必须置为低以便使能输出端。任选一个使能输入端作为数据输入,74HC154可充当一个1-16的多路分配器。当其余的使能输入端置低时,地址输出将会跟随应用的状态。以下为74HC154的引脚图和实物图。 图2-6 译码器74HC154引脚图 图2-7 74HC154实物图引脚说明:1-11 13-17 :输出端。(outputs (active LOW)18-19:使能输入端、低电平有效 (enable inputs (active LOW)20-23

8、地址输入端 (address inputs)24:VCC电源正 (positive supply voltage) 表2-1 译码器74HC154 真值表 需要注意的是,只要控制端G1、G2任意一个为高电平,A、B、C、D任意电平输入都无效。G1、G2必须都为低电平才能操作芯片。2.4.2 列驱动电路 由于16x16点阵显示器有16行,为充分利用单片机的接口,本电路中加入了一个4-16线译码器74HC154,其输入是一个16进制码,解码输出为低态扫描信号,把74HC154的G1口连接单片机89C52的P1.4引脚,来实现控制,G2引脚接地,然后以A、B、C、D四脚为输入端。就会形成16种不同的

9、输入状态,分别为00001111,然后使每种状态只控制一路输出,即会有16路输出。如图2-8为驱动电路在proteus仿真软件中的电路原理图。 图2-8 驱动电路原理图2.5 LED点阵显示屏工作原理 LED发光二极管,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光。LED的心脏是一个半导体的晶片。以下为8*8点阵LED显示屏的原理图和结构图。 图2-9 点阵LED原理图图2-10 8*8LED点阵正面图 图2-11 8*8LED点阵背面图 晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来。半导体晶片由两部分组成,一部分是P型半导

10、体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。但这两种半导体连接起来的时候,它们之间就形成一个P-N结。当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED灯发光的原理。而光的波长也就是光的颜色,是由形成P-N结的材料决定的。2.7 Proteus仿真软件的运用 2.7.1 Proteus仿真软件简介 Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和

11、虚拟模型仿真软件三合一的设计平台,在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。 如图2-12为Proteus工作主界面图。 图2-12 proteus主界面 在PROTEUS绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在PROTEUS的原理图中看到模拟的实物运行状态和过程。PROTEUS不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。 它的元器件、连接线路等却和传统的单片机实验硬件高度对应。这在相当程度上替代了传统的单片机实验教学的功能,例:元器件选择、电路连接

12、、电路检测、电路修改、软件调试、运行结果等。 2.7.2 Proteus环境下的原理图本设计在Proteus系统下绘制的原理图如图2-13 。 图2-13 在Proteus下的原理图2.7.3仿真图 基于Proteus环境下仿真结果如图2-14。 图2-14 “机械09”字样在Proteus系统下的仿真图 2.8 Altium Designer软件的运用2.8.1 Altium Designer的简介 Altium Designer 是原Protel软件开发商Altium公司推出的一体化的电子产品开发系统,主要运行在Windows XP操作系统。这套软件通过把原理图设计、电路仿真、PCB绘制编

13、辑、拓扑逻辑自动布线、信号完整性分析和设计输出等技术的完美融合,为设计者提供了全新的设计解决方案,使设计者可以轻松进行设计,熟练使用这一软件必将使电路设计的质量和效率大大提高。 图2-15 Altium Designer工作主界面 图2-16 Altium Designer软件环境下设计的原理图 图2-17 通过Altium Designer软件绘制的PCB板图第三章 系统软件设计3.1 系统显示原理 每一个字由16行16列的点阵组成显示,即国标汉字库中的每一个字均由256点阵来表示。我们可以把每一个点理解为一个像素,而把每一个字的字形理解为一幅图像。事实上这个汉字屏不仅可以显示汉字,也可以显

14、示在256像素范围内的任何图形。用8位的AT89C52单片机控制,由于单片机的总线为8位,一个字需要拆分为2个部分如图2-3所示。本电路把它拆分为左部和右部,左部由16(行)*8(列)点阵组成, 右部也由16(行)*8(列)点阵组成。 以显示汉字“繁”为例,来说明其扫描原理: 图3-1点阵屏 单片机首先由P2口输出显示数据信号给右部分的第一行如图2-3所示,即第一行的P20-P27口。方向为P20到P27 ,显示汉字“繁”时,P21点亮,由左到右排,为P20灭,P21亮, P22灭,P23灭, P24灭, P25灭, P26灭, P27灭。即二进制01000000,转换为16进制为 0x40。

15、右部分的第一行完成后,继续扫描左半部的第一行,为了接线的方便,我们仍设计成由左往右扫描,即从P00向P07方向扫描,从上图可以看到,这一行只有P01亮,其它灭, 即为01000000,16进制则为0x40。然后单片机再次转向右半部第二行,仍为P21点亮,为01000000,即16进制0x40。这一行完成后继续进行左半部分的第二行扫描,P00灭,其他都点亮,为二进制01111110,即16进制0x7E。 依照这个方法,继续进行下面的扫描,一共扫描32个8位,可以得出汉字“繁”的扫描代码为:0x40,0x40,0x40,0x7E,0x7E,0x80,0x84,0x7E,0x48,0x53,0x28

16、,0xFE,0x10,0x4A,0x28,0x7F,0x46,0x03,0x40,0x04,0x80,0x1F,0x20,0x02,0xF0,0x0F,0x10,0x01,0x20,0x09,0x10,0x13由这个原理可以看出, 无论显示何种字体或图像, 都可以用这个方法来分析出它的扫描代码从而显示在屏幕上。3.2 程序框图 3.3字模提取软件的运用一个国标汉字是由16X16即256个点(像素)来构成的,显示一个汉字该亮哪些点这些复杂的工作都交给取模软件来完成,同时,取模软件也负责把要显示的汉字转化成程序中要用到的显示代码,代码以一定的规律表征了该亮的点(用“1”表示)与不该亮的点(用“0”

17、表示),一共256位。单片机负责将这些代码一段一段有规律地送到LED屏。汉字的点阵字模是从点阵字库文件中提取出来的,就可以显示汉字了。本设计采用图3-2和3-3所示软件进行取模: 图3-2 字模提取 图3-3 取模方式设置窗口3.4循环程序的设计 为了是文字能够在LED显示屏上循环显示,设计了程序如下: int offset=0; /定义偏移量 int count=0; /定义次数 if (count64) /指针终点 offset=0; /偏移量归零,重新开始循环 count用来控制每次移位LED灯闪的次数。这里设置为60,即每移位一次,LED灯闪60次,然后再进行下次移位。3.5延时程序的

18、设计画面的稳定有两个条件:显示延长的时间应控制在合理的范围之内,时间小了会看不清画面,时间大了画面不连续。延时函数如下:void delay(void)int j;for(j=0;j25;j+);3.6指针程序的设计为了让图像实现滚动,设计了指针p加偏移量offset。当偏移量发生变化,*(p+offset)也跟着变化,这样指针就会指向下一个数组单元,实现滚动显示。offset的增量必须为2的倍数,如果为奇数,会出现左右屏交替显示的现象。本设计将offset每次的偏移量设置为2,因为如果设置太大,滚动会有加大的跳跃性,使画面失去流畅性。void delay(void);void main( )

19、 char *p; /定义指针 int i; p=&word_gu00; / p指向数组起始点 while(1) for(i=0;i64) 从i=0到i=15,显示完16行,并且重复60次后,指针偏移量+2,实现整体移位一行。依此执行,直到执行完数组全部单元,然后offset赋值0,即重头开始执行。这样就实现了滚动循环显示。3.7暂停程序的设计 sbit key=P15; /定义开关引脚 if(key=0) /开关处于断开状态 /每次偏移2个数组单元465) /循环显示的终点 /循环初始化 if(key=1) /开关闭合 offset=offset; /偏移量不发生变化 当开关被按下,key=

20、1,偏移量将保持当时的数值,指针停止偏移,即完成了显示的停止滚动,保留当前画面。重新将开关断开,key=0,指针偏移量的增量恢复为+2,画面将继续滚动。3.8 Keil uVision 软件的运用Keil uVision是德国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统c语言的语法来开发,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和项目开发周期,KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51已被完全集成到uVision的

21、集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision IDE可为它们提供单一而灵活的开发环境。 图3-4 Keil uVision的操作主界面 图3-5运用Keil uVision编程 本设计采用Keil uVision软件辅助设计是因为该软件有一个优点,该软件能将我们编的程序生成HEX文件,HEX文件也可以直接运用于proteus仿真。如图3-6为运用Keil uVision软件生成HEX文件的设置。 图3-6 Keil uVision编程软件生成HEX文件第四章 调试与分析4.1硬件调试与分析4.1.1 LED点阵显示屏引脚的确定 LED点

22、阵显示屏的引脚分布图并不是像原理图那样行与列分开分布的,而是交错分布。在实际运用中,需要先用万用表测出其引脚分布才能正确的连接。 用一个9V的电池,串联一个1K的电阻,然后一个一个引脚的测试。先给LED点阵各行各列编号。我将列用字母A到H表示,行用数字1-8表示。如图4-1所示,将电源正极连接引脚上方第一个引脚,然后用电池的负极去依次接触各个引脚,发现上方第一引脚是点阵第八列的阳极,标注+H,并且通过这个引脚,确定了每一行阴极所在的引脚。分别标记-1 -8。然后根据这个方法,测出了所有引脚所连接的行与列,并编号。如图4-1为测试引脚过程中,手绘的引脚分布示意图。 图4-1 LED各引脚极性分布

23、图 4.1.2烧入程序程序的下载使用的硬件是学习板TX-1CHC,软件是STC_ISP 。打开软件STC_ISP,选择型号为STC89C52的单片机,然后打开整理在Keil软件里编译好的HEX程序。然后用USB数据线将学习板与电脑连接起来,选择COM口与电脑的相互对应。接着点击下载。当提示与单片机上电的时候,打开学习板的开关,在这之前不能打开开关,不然容易造成电脑死机,或者程序下载不进去。当提示已加密,就表示程序已经下载完成。如图4-2为TX-1CHC学习板,4-3为STC_ISP软件。 图4-2 TX-1CHC学习板 图4-3 STC_ISP软件窗口 4.1.3操作失误与总结 由于以前从未接

24、触过焊接,缺乏焊接技术,在焊接的过程中经常出现短焊,虚焊等问题,甚至因为接错时间太长,把L7805C芯片烧坏。 焊接时应使电烙铁的温度高于焊锡的温度,但也不能太高,以烙铁头接触松香刚刚冒烟为好。焊接时间太短,焊点的温度过低,焊点融化不充分,焊点粗糙容易造成虚焊,反之焊接时间过长,焊锡容易流淌,并且容易使元件过热损坏元件。 焊接点上的焊锡数量不能太少,太少了焊接不牢,机械强度也太差。而太多容易造成外观一大堆而内部未接通。焊锡应该刚好将焊接点上的元件引脚全部浸没,轮廓隐约可见为好。 不要用电烙铁在焊接处来回移动或者用力挤压。正确的方法是用电烙铁的搪锡面去接触焊接点,这样传热面积大,焊接速度快。4.2 软件调试与分析 4.2.1 拖尾现象 在滚动显示的过程中,发现在切换行显示数据的时候产生拖尾现象,通过多次调试都无法解决该问题,于是决定在切换行前先关闭列驱动器。并且延时,以此来消除切换行过程中,在人眼中产生的残影。从而实现消隐。设计程序如下:i+) /右边 P2=*(p+offset+2*

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1