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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于单片机的心形流水灯毕业设计论文 精品.docx

1、基于单片机的心形流水灯毕业设计论文 精品课程设计(论文)说明书题 目: 心形流水灯 院 (系): 信息与通信学院 专 业: 通信工程 学生姓名: 学 号: 指导教师: 职 称: 讲 师 2012年 12 月 1日摘 要本论文基于单片机技术与单片机芯片AT89S51芯片功能和C语言程序,实现心形流水灯的多种亮与灭的循环。首先,我们了解单片机的一些技术,了解了单片机芯片AT89S51的一些功能;然后结合C语言编程;最后将它们运用到实际的电路,使心形LED灯实现多种亮灭方法。本论文介绍关于流水灯的运用和单片机技术;然后介绍芯片AT89S51;最后介绍运用到的相关软件.关键词:单片机;流水灯;C语言;

2、Abstract This paper Based on the single chip microcomputer and single chip microcomputer chip AT89S51 chip function and C language program,Realization of flowing water light heart a variety of light and the cycle of destruction。primarily,We know some of the single chip microcomputer technology,Under

3、standing of the single chip microcomputer chip AT89S51 of some functions, Then based on the C language programming; Finally they are applied to the practical circuit, Make heart LED lamp achieve a variety of light out method. This paper introduces about the use of flowing water light and single chip

4、 microcomputer; and then introduced chip AT89S51; At the end of this paper applied to software.Key words:micro-computer;light water ;C programming language3.4 设计步骤及方法.84.3 C语言程序运用.10引 言LED流水灯是运用单片机原理和一些芯片功能,结合C语言或者汇编语言,实现灯的亮灭方式。流水灯主要用于装饰婚庆布置、宾馆、酒店、酒吧、聚会、商厦、家居、橱窗、俱乐部、音乐会、歌厅、时装表演、舞厅、舞台、等等各个场所,也可以作为礼物送

5、人。 本文主要讲述我完成这次课设所经历的五个阶段:总体方案设计、硬件电路设计方案及原理、软件调试及仿真,电路板的制作、对于本次课程设计的改进预想。在介绍我本次课程设计的设计原理的同时,也侧重同时记录了我是如何对于设计过程中遇到的问题进行分析和解决的。同时,我也着重介绍了我所用到的相关软件和芯片功能。1 设计方案1.1 总体设计目标1.1.1使心形LED灯实现一亮一灭功能利用C语言编程,使LED灯实现一亮一灭功能,循环两次。1.1.2使心形LED灯实现两亮两灭功能使用C语言编程,实现LED灯两亮两灭,循环两次。1.1.3是心形LED流水灯具有4亮4灭功能,全亮全灭使用C语言,实现LED流水灯4亮

6、4,全亮全灭等循环。1.1.4具有复位功能在按下开关后,实现灯从一亮到全亮复位。 1.2总体设计组成框图 系统框图如下 1.1系统框图运用单片机与芯片AT89S51功能,以及C语言程序编程,是LED灯实现多种亮灭方法,运用晶振给单片机芯片提供一个时钟信号,本次实验采用12MHz的晶振给单片机提供时钟信号。 2相关运用及功能2.1流水灯运用LED灯可以装饰婚庆布置、宾馆、酒店、酒吧、聚会、商厦、家居、橱窗、俱乐部、音乐会、歌厅、时装表演、舞厅、舞台、等等各个场所, 也可以当做礼物送人。人们可以将各种亮法的灯去装饰自己需要装饰的地方,也可以安放在广告牌,这样更为吸引人们的关注。2.2 单片机运用目

7、前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: 1.在智能仪器仪表上的应用 2.在工业

8、控制中的应用 3.在家用电器中的应用 4.在计算机网络和通信领域中的应用 5.单片机在医用设备领域中的应用 6.在各种大型电器中的模块化应用 7.单片机在汽车设备领域中的应用此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。2.3AT89S51芯片功能AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和

9、ISP Flash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。主要性能特点1、4k Bytes Flash片内程序存储器; 2、128 bytes的随机存取数据存储器(RAM); 3、32个外部双向输入/输出(I/O)口; 4、5个中断优先级、2层中断嵌套中断; 5、6个中断源; 6、2个16位可编程计数器; 7、2个全双工串行通信口; 8、看门狗(WDT)电路; 9、片内振荡器和时钟电路; 10、与MCS-51兼容; 11、全静态工作:0Hz-33MHz; 12、三级程序存储器保密锁定; 13、可编程串行通道; 14、低功耗的闲置和掉电模式。 管脚说明VCC:电源电压输入

10、端。 GND:电源地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 PDIP封装的AT89S51管脚图P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地

11、址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“

12、1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口除了作为普通I/O口,还有第二功能: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(T0定时器的外部计数输入) P3.5 T1(T1定时器的外部计数输入) P3.6 /WR(外部数据存储器的写选通) P3.7 /RD(外部数据存储器的读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。 I/O口作为输入口时有两种工作方式,即所谓的读端口与读引脚。读端口时实际

13、上并不从外部读入数据,而是把端口锁存器的内容读入到内部总线,经过某种运算或变换后再写回到端口锁存器。只有读端口时才真正地把外部的数据读入到内部总线。89C51的P0、P1、P2、P3口作为输入时都是准双向口。除了P1口外P0、P2、P3口都还有其他的功能。 RST:复位输入端,高电平有效。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:地址锁存允许/编程脉冲信号端。当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作

14、对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 PSEN:外部程序存储器的选通信号,低电平有效。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 EA/VPP:外部程序存储器访问允许。当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密

15、方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:片内振荡器反相放大器和时钟发生器的输入端。 XTAL2:片内振荡器反相放大器的输出端。3 软件部分设计方案及仿真3.1 multisim软件功能简介Multisim是Interactive Image Technologies (Electronics Workbench)公司推出的以Windows为基础的仿真工具,适用于板级的模拟/数字电路板的设计工作。它包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。

16、为适应不同的应用场合,Multisim推出了许多版本,用户可以根据自己的需要加以选择。在本书中将以教育版为演示软件,结合教学的实际需要,简要地介绍该软件的概况和使用方法,并给出几个应用实例。Multisim是加拿大图像交互技术公司(Interactive Image Technoligics简称IIT公司)推出的以Windows为基础的仿真工具,适用于板级的模拟/数字电路板的设计工作。它包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。 工程师们可以使用Multisim交互式地搭建电路原理图,并对电路行为进行仿真。Multisim提炼了SPICE仿真的复杂内容,这样

17、工程师无需懂得深入的SPICE技术就可以很快地进行捕获、仿真和分析新的设计,这也使其更适合电子学教育。通过Multisim和虚拟仪器技术,PCB设计工程师和电子学教育工作者可以完成从理论到原理图捕获与仿真再到原型设计和测试这样一个完整的综合设计流程.3.2 Altium Designer软件功能简介Altium Designer 提供了唯一一款统一的应用方案,其综合电子产品一体化开发所需的所有必须技术和功能。Altium Designer 在单一设计环境中集成板级和FPGA系统设计、基于FPGA和分立处理器的嵌入式以及PCB版图设计、编辑和制造。并集成了现代设计数据管理功能,使得Altium

18、Designer成为电子产品开发的完整解决方案一个既满足当前,也满足未来开发需求的解决方案。最新发布的 Altium Designer10 为您带来了一个全新的管理元器件的方法。其中包括新的用途系统、修改管理、新的生命周期和审批制度、实时供应链管理等更多的新功能!Release 10 将继续保持不断插入新的功能和技术的过程,使得您可以更方便轻松地创建您的下一代电子产品设计。 Altium 的统一的设计架构以将硬件,软件和可编程硬件等等集成到一个单一的应用程序中而闻名。它可让您在一个项目内,甚或是整个团队里自由地探索和开发新的设计创意和设计思想,团队中的每个人都拥有对于整个设计过程的统一的设计视

19、图。Altium Designer 10 提供了一个强大的高集成度的板级设计发布过程,它可以验证并将您的设计和制造数据进行打包,这些操作只需一键完成,从而避免了人为交互中可能出现的错误。发布管理系统简化规范了发布您的设计项目的流程,或者更具体地说,是那些项目中定义的配置, 直观,简洁而且稳定。更重要的是,该系统可以被直接链接到您的后台版本控制系统。 新增的强大的预发布版验证手段的组合 - 用以确保所有包含在发布中的设计文件都是当前的,与存储在您的版本控制系统中的相应的文件“主人”保持同步的文件,并且通过了所有特定的规则检查ERC, DRC, 等等, 从而,您可以在更高层面上控制发布管理,并可保

20、证卓越的发布质量。3.3 keil软件功能简介单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器

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

22、C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。 Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。下面详细介绍Keil C51开发系统各部分功能和使用。C51工具包的整体结构,如图(1)所示,其中uVision与I

23、shell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。3.4 设计步骤及方法首先,确定好原理图后,在multi

24、sim软件上画好,并仿真;仿真成功后再在Altium Designer软件上面画好PCB图;然后在keil软件软件上面,用C语言进行编程,把程序录入芯片AT89S51上面,再做板。4 电路板的制作及调试 4.1 PCB的印制和电路板的制作运行Altium Designer软件,首先新建工程,新建一个原理图文件,在Altium Designer中再选择相应的元件,进行布局、连线,修改它所对应的封装,再导入原理图中,检查原理图无误后,生成网络表。新建一个PCB文件,导入前一步中生成的网络表,排查其中的错误直到能够成功导入。对于导入的元件进行布局,尽量使电路板看起来紧凑一些,同时减少线与线之间的交叉

25、,减少不必要的跳线,使用手动布线之后再对照原理图检查多遍是否正确,然后去打印店打印PCB。科协有印版的机器,在印制电路板前首先用砂纸将铜板打磨光滑方便印制和腐蚀,在印版时将电路板和打印的PCB纸紧密相贴,双手送入机器当中,反印两次之后就基本成功了,之后检查是否存在有断线,用油性笔将有断线的地方即使连接起来。之后将浓盐酸、双氧水和水按照一定的比例配置成腐蚀液,将印制好的电路板放入其中,用手晃动盛有腐蚀液的容器可以加快反应速度。在反应完后取出电路板,用清水清洗之后就可以开始打孔了,打孔的时候要对准,不然在之后插元件尤其是多管脚的芯片时会很困难,也不要磨针,不然很容易就会断。在打完孔之后,用砂纸打磨

26、一遍,再涂上松香防止腐蚀,就可以开始对电路板进行元件的焊接了,焊接时应注意要焊稳,防止虚焊的产生。如果腐蚀液以及反应完,可以向科协的同学说明,并在同学指导下把腐蚀液配置好,不要自己配置腐蚀液,并且注意安全。4.2 电路板的调试过程及所遇问题的解决方案电路所设计的功能能否实现,电路板制作的好坏也起了很大的作用。在接通电源前,我先对电路中的主要线路进行了测量,包括电源线,排线,芯片之间的连线,然后就接上5V电源,开始对电路中的功能进行检测。接通5V电源后,首先观察所以等是否都亮,如果不亮,一一看电路板是否虚焊了。还有灯如果亮,但是不按自己编的程序亮,还要看程序是否已经成功录入芯片,或者程序错误,还

27、有,程序对了,电路也没有虚焊,灯并没有按照程序亮法亮,这样检查焊锡是否多了,焊锡多了也容易出现问题,因为焊接时,焊锡会空隙焊接,实际上并没有焊接好电路。在这次的调试过程中,从最开始的制作PCB到后来的电路板进行实物检测,我都遇到了很多的问题,以下是我对这些问题的解决过程以及从中获得的心得体会4.2.1元件的封装由于Altium Designer软件配备的元件库已经很旧了,因此在电路板的制作之前最好先买好元器件用游标卡尺对各个管脚的宽度进行测量,确定各个管脚的功能和封装是否能够对应,不然在焊好元件之后发现封装错误只好重做,这也需要平时多动手,多熟悉各种元件的管脚功能,毕竟元器件店卖的芯片型号很多

28、,实现的功能也可能和课本上的不一样。也可以去上网XX,下载最新的元件库,记得要多上网,接触最新的信息。4.2.2断线和虚焊由于科协做板的人很多,因此大家都是放在一起腐蚀,难免会有许多的剐蹭,因此腐蚀好的电路板出现断线也就在所难免,因此在做完电路板,焊接好元件之后就要对线路进行全面的检查,用万用表对着原理图来测量,不能光凭肉眼判断。在这次的课设中,在焊好元件后我已经对线路进行了检查,然后在后来的调试过程中发现原来检查好的线路上又出现了断线,应该是在调试的过程中剐蹭造成的,因此在电路不能实现功能时要及时进行线路的检查。在焊接的技术不是很熟练的时候,虚焊很容易出现,而且与断线相比,它不容易被发现,特

29、别是对于多管脚的芯片,由于前面打孔的时候没打好,芯片插进去的时候就会很困难,很容易出现一些管脚没有完全穿过去的情况,这个时候就最容易出现虚焊,在这次课设的过程中,就是有一个芯片的管脚没有插好导致电路没有实现功能。还有,管脚特别多的时候,不能把管脚焊接在一起,这样会造成电路短路,元器件会容易烧坏,所以,在接电源之前要注意检查虚焊和焊接是否会造成短路。还有注意芯片的保护,由于芯片管脚很多,而且芯片管脚比较小,所以在芯片的安放和拿出过程中必须要小心,不能把芯片管脚弄坏,建议使用工具把管脚取出。4.2.3万用表的使用使用万用表,可以检查电路是否虚焊了,这样有助于保证电路板成功实它的功能。4.3 C语言

30、程序运用在本次课程设计中,c语言程序的编程对电路板最终功能实现占大部分的作用,以下是部分c语言程序代码:#include#define uint unsigned int void delay1ms(unsigned int i)unsigned char j; while(i-) for(j=0;j125;j+) /1ms基准延时程序 ; void main() uint k; while(1) for(k=0;k2;k+) P1=0XFF; /16个led一个一个亮起 P0=0xfe; delay1ms(200); P0=0xfd; delay1ms(200); P0=0xfb; delay1ms(200); P0=0xf7; delay1ms(200); P0=0xef; delay1ms(200); P0=0xdf; delay1ms(200); P0=0xbf; delay1ms(200); P0=0x7f; delay1ms(200); P0=0XFF; P1=0xfe; delay1ms(200); P1=0xfd; delay1ms(200); P1=0xfb; delay1ms(200); P1=0xf7; delay1ms(100); P1=0xef; delay1ms(200); P1=0xdf; delay1ms(200); P1=0xbf;

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

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