基于单片机的跑马灯系统的设计与实现.docx

上传人:夺命阿水 文档编号:908439 上传时间:2024-01-12 格式:DOCX 页数:11 大小:81.67KB
返回 下载 相关 举报
基于单片机的跑马灯系统的设计与实现.docx_第1页
第1页 / 共11页
基于单片机的跑马灯系统的设计与实现.docx_第2页
第2页 / 共11页
基于单片机的跑马灯系统的设计与实现.docx_第3页
第3页 / 共11页
基于单片机的跑马灯系统的设计与实现.docx_第4页
第4页 / 共11页
基于单片机的跑马灯系统的设计与实现.docx_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《基于单片机的跑马灯系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于单片机的跑马灯系统的设计与实现.docx(11页珍藏版)》请在课桌文档上搜索。

1、单片机及控制系统设计课程设计报告题目:基于单片机的跑马灯系统的设计与实现院(系):机电与自动化学院专业班级:电气自动化技术0901学生姓名:詹志鹏学号:学092822006指导教师:汪媛2011年12月26日至2012年1月10日华中科技大学武昌分校目录1设计题目及要求11.1设计题目11. 2设计目的12. 3控制要求12硬件设计23. 1单片机简介22.1.1单片机的引脚22.1.2单片机的内部结构32.2电源电路42.3时钟电路42.4复位电路52.5EA/VPP(31脚)的功能和接法62.6PO口外接上拉电阻62.7发光二级管72. 8显示电路局部83. 9AT89C51单片机最小系统

2、93软件设计104. 1源程序与注释103.2软件编译、调试与烧入11总结16附录实物图17参考文献18L设计题目及要求LI设计题目单片机小系统版控制LED灯1.2 设计目的1. 单片机最小应用系统的硬件设计技能训练;2. ASM语言或C51语言软件编程与调试技能训练;3. “下载及烧录(固化)程序开发技能训练;4. Protell软件应用技能训练;1.3 控制要求按键及外部中断控制二级管灯(自右向左)1 .按键控制8个LED灯循环自右向左依次点亮2 .间隔时间可以自行设计3 .单号灯亮双号灯灭1- 5-3-*kIfRf5f3f11 .外部中断控制8个LED灯循环自右向左依次点亮2 .间隔时间

3、可以自行设计3 .双号灯亮单号灯灭8f6-4-2f8-6-4f22.硬件设计2.1 单片机简介单片机的引脚(1)电源:40号引脚VCC是芯片电源,接+5V。20号引脚VSS为电源接地端。(2)时钟引脚:XTAL2118号脚)采用内部时钟电路时,外接晶体振荡器;采用外部时钟电路时,此引脚接地。XTALl(19号脚)采用内部时钟电路时,外接晶体振荡器;采用外部时钟电路时,此引脚接外部时钟源。(3)控制引脚:ALE/为地址锁存允许信号,用来把低8位地址锁存到外部地址锁存器。ALE引脚以不变的1/6振荡频率周期性地发出正脉冲信号,可用做对外输出的时钟信号。(4) I/O口线:PO口(3239号脚)为双

4、向输入/输出端口。PI口(18号脚)为准双向输入/输出端口。P2(2128号脚)为准双向输入/输出端口。P3(1017号脚)为准双向输入/输出端口。单片机的内部结构51系列单片机主要包括CPU、程序存储器、数据存储器以及接口电路等各组成局部。单片机内部结构框图单片机的内部结构:1个8位的CPU。时钟电路。程序存储器。数据存储器。定时器/计数器。4个并行口。1个全双工串行口。5个中断源。2.2电源电路电源模块通过7805稳压之后稳定的输出5v电压,以供整个系统工作。7805系列为三端正稳压电路,T0-220封装,能提供多种固定的输出电压,应用范围广。内含过流、过热和过载保护电路。带散热片时,输出

5、电流可达1A。虽然是固定稳压电路,但使用外接元件,可获得不同的电压和电流。主要特点:输出电流可达1A,输出电压有:5V,过热保护,短路保护,输出晶体管SOA保护。2.3时钟电路在设计时钟电路之前,让我们先了解下51单片机上的时钟管脚:XTALl(19脚):芯片内部振荡电路输入端。XTAL2(18脚):芯片内部振荡电路输出端。XTALl和XTAL2是独立的输入和输出反相放大器,它们可以被配置为使用石英晶振的片内振荡器,或者是器件直接由外部时钟驱动。图中采用的是内时钟模式,即采用利用芯片内部的振荡电路,在XTAL1、XTAL2的引脚上外接定时元件(一个石英晶体和两个电容),内部振荡器便能产生自激振

6、荡。一般来说晶振可以在L212MHz之间任选,甚至可以到达24MHZ或者更高,但是频率越高功耗也就越大。在本实验套件中采用的1L0592M的石英晶振。和晶振并联的两个电容的大小对振荡频率有微小影响,可以起到频率微调作用。当采用石英晶振时,电容可以在2040pF之间选择(本实验套件使用30pF);当采用陶瓷谐振器件时,电容要适当地增大一些,在3050pF之间。通常选取33pF的陶瓷电容就可以了。2. 4复位电路在单片机系统中,复位电路是非常关键的,当程序跑飞(运行不正常)或死机(停止运行)时,就需要进行复位。MCS-51系列单片机的复位引脚RST(第9管脚)出现2个机器周期以上的高电平时,单片机

7、就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。复位操作通常有两种根本形式:上电自动复位和开关复位。图中所示的复位电路就包括了这两种复位方式。上电瞬间,电容两端电压不能突变,此时电容的负极和RESET相连,电压全部加在了电阻上,RESET的输入为高,芯片被复位。随之+5V电源给电容充电,电阻上的电压逐渐减小,最后约等于0,芯片正常工作。并联在电容的两端为复位按键,当复位按键没有被按下的时候电路实现上电复位,在芯片正常工作后,通过按下按键使RST管脚出现高电平到达手动复位的效果。一般来说,只要RST管脚上保持IOmS以上的高电平,就能使单片机有效的复位。图中所示的复位电阻和电容

8、为经典值,实际制作是可以用同一数量级的电阻和电容代替,也可自行计算RC充电时间或在工作环境实际测量,以确保单片机的复位电路可靠。2.5 EA/VPP(31脚)的功能和接法51单片机的EA/VPP(31脚)是内部和外部程序存储器的选择管脚。当EA保持高电平时,单片机访问内部程序存储器;当EA保持低电平时,则不管是否有内部程序存储器,只访问外部存储器。对于现今的绝大局部单片机来说,其内部的程序存储器(一般为flash)容量都很大,因此根本上不需要外接程序存储器,而是直接使用内部的存储器。在本实验套件中,EA管脚接到了VCC上,只使用内部的程序存储器。2.6 PO口外接上拉电阻51单片机的PO端口为

9、开漏输出,内部无上拉电阻。所以在当做普通I/O输出数据时,由于V2截止,输出级是漏极开路电路,要使“1信号(即高电平)正常输出,必须外接上拉电阻。PO端口的1位结构另外,防止输入时读取数据出错,也需外接上拉电阻。在这里简要的说下其原因:在输入状态下,从锁存器和从引脚上读来的信号一般是一致的,但也有例外。例如,当从内部总线输出低电平后,锁存器Q=0,Q=I,场效应管Vl开通,端口线呈低电平状态。此时无论端口线上外接的信号是低电平还是高电平,从引脚读入单片机的信号都是低电平,因而不能正确地读入端口引脚上的信号。又如,当从内部总线输出高电平后,锁存器Q=1,Q=0,场效应管Vl截止。如外接引脚信号为

10、低电平,从引脚上读入的信号就与从锁存器读入的信号不同。所以当PO口作为通用I/O接口输入使用时,在输入数据前,应先向PO口写“1,此时锁存器的Q端为“0,使输出级的两个场效应管VI、V2均截止,引脚处于悬浮状态,才可作高阻输入。总结来说:为了能使PO口在输出时能驱动NMOS电路和防止输入时读取数据出错,需外接上拉电阻。在本实验套件中采用的是外加一个IOK排阻。此外,51单片机在对端口PO-P3的输入操作上,为防止读错,应先向电路中的锁存器写入“1,使场效应管截止,以防止锁存器为“0状态时对引脚读入的干扰。2. 7发光二极管发光二级管是由IIITV族化合物半导体制成的,其核心是PN结。因此它具有

11、一般P-N结的-N特性,即正向导通,反向截止、击穿特性。此外,在一定条件下,它还具有发光特性。在正向电压下,电子由N区注入P区,空穴由P区注入N区。进入对方区域的少数载流子一局部与多数载流子复合而发光。如下图:假设发光是在P区中发生的,那么注入的电子与价带空穴直接复合而发光,或者先被发光中心捕获后,在与空穴复合发光。除了这种复合发光外,还有些电子被非发光中心捕获,而后在与空穴复合。每次释放的能量不大,不可能形成可见光。发光的复合量相对于非发光的复合量的比例越大,光量子效率越高。由于复合是在少子扩散去内发光的,所以光线仅在靠近PN结面数um以内产生。.发光二极管的特性有极限参数的意义、电参数的意

12、义。极限参数的意义有允许功耗、最大正向直流电流、最大反向电压和工作环境。电参数的意义有光谱分布和峰值波长、发光强度、光谱半宽度、半直角和视角、正向工作电流、正向工作电压和VT特性。发光二极管的应用:由于发光二极管的颜色、尺寸、形状、发光强度及透明情况等不同,所以使用发光二极管时应根据实际需要进行恰中选择。由于发光二极管具有最大正向电流、最大反向电压的限制,使用时,应保证不超过此值。发光二极管被广泛应用于各种电子仪器和电子设备中,可作为电源指示灯、电平指示或微光源之用。红外发光二极管被常用于电视机、录象机等的遥控中。2.8显示电路局部显示局部主要是由八个LED和两个七段数码管组成,八个LED由限

13、流电阻限流后接入Pl,PO口接入上拉电阻,并接限流电阻和数码管DYP-7-1的七段LED,数码管DYP-7-2的七段LED和限流电阻接入p2口,两个数码管的公共端并接限流电阻后接VCCo2.9AT89C51单片机最小系统3.软件设计3.1 源程序与注释ORG0000HLjMPKSORG0003HLJMPMAIN;下一条语句的地址为OOOOH;长跳转到KS标号执行程序;下一条语句的地址为0003H;长跳转到MAlN标号执行程序KS:SETBITOSETBEXO;设置ITO(interrupttype)=1,意思是int下降沿触发;设置EXO(externelextended)-1,意思是翻开外部

14、中断int允许位L:MAIN:DAY:DL2:DLl:SETBEA;设置EA(enableall)=l,意思是翻开总中断开关(即开中断)MOVA,#0BFH;将OBFH立即数送至A存放器MOVPl,ACLLDAYRRARRASJMPLMOVA,#7FHMOVPl,AACALLDAYRRARRAMOVPl,ARETIMOVMOVNOPNOPDJNZDJNZRET;将A存放器的值送到Pl口;调用DAY函数;Rotateright,将A存放器向右循环1次;同上;短跳转到L标号处执行程序;将7FH立即数送至A存放器;将A存放器的值送至Pl口;调用函数DAY;Rotateright,将A存放器向右循环1

15、次;同上;将A存放器的值送至Pl口;中断函数返回R0,#0FFH;将OFFH立即数送至RO工作存放器组Rl,#0FFH;将OFFH立即数送至Rl工作存放器组;空机器周期,什么都不做,亦即等待12个时钟周期;同上Rl,DLl;将Rl的内容-1,测试是否为0,如果不等于0,则跳至DLl标号执行程R0,DL2;将RO的内容T,测试是否为0,如果不等于0,则跳至DL2标号执行程;DAY函数返回ENDKS;程序结束3.2软件编译、调试与烧入1 .启动VisionViSion2是一个标准的WindoWS应用程序,双击KeilViSiOn2图标即可启动,也可以选择“开始一”程序KeilViSion2命令来启

16、动运行。其主界面如下图。2,创立一个工程并选择单片机选择“Project”(工程)一NewProject”(新建工程)命令,如下图,将弹出aGreateNewProject”(新建工程)对话框,如下图。随后会弹出一个对话框,要求选择单片机的型号,如下图。在该对话框中显示了Vision2的器件数据库,从中可以根据使用的单片机来选择。3 .创立一个新的源程序文件,并把这个源文件添加到工程中单击工具栏中的新建文件图标(或选择File”(文件)-New(新建)命令),文件操作窗口即可出现新建文件。保存该空白文件,单击工具栏中的保存图标(或选择“File(文件)一Save(保存)命令),弹出如下图的“S

17、aveas(保存为)对话框,在“文件名文本框中输入欲保存的文件名,保存时注意加上正确的后缀名。单击Targetl前面的+号,然后在SoUrCeGroUPl上单击鼠标右键,弹出快捷菜单,如下图。选择“AddFilestoGroupSourceGroup1,添加文件到工程)命令,弹出如下图的对话框。选中LED.ASM文件(注意选择文件类型),然后单击“Add”(添加)按钮,即可添加LED.ASM到工程中。4 .输入源程序:此时就可以输入源程序了,如下图。5 .Output”选项卡如下图,其中有多个选项,此处选择CreateHEXFile复选框用于生成可执行代码文件,该文件可以用编程器写入单片机芯片

18、,文件的扩展名为HEX,默认情况下该项未被选中,如果要写芯片做硬件实验,就必须选中该项。其余选项均取默认值,不做任何修改。6 .编译工程并创立HEX文件设置好工程参数后,即可进行编译、连接。选择“Project(工程)一Buildtarget(连接工程)命令,对当前工程进行连接。如果当前文件已修改,将先对该文件进行编译,然后再连接以产生目标代码;如果选择“RebuildAlltargetfiles(重新编译所有文件后再连接)将会对当前工程中的所有文件重新进行编译然后再连接,确保最终生产的目标代码是最新的,而选择“Translate1编译)命令则仅对当前文件进行编译,不进行连接。以上操作也可以通

19、过工具栏中的图标直接进行。如下图,从左到右的图标分别是:编译、编译连接、全部重建、停止编译和对工程进行设置。对源程序修改之后再次编译,最终要得到如下图的结果,提示O个错误,O个警告,该文件即可被编程器读入并写到AT89C51芯片中。同时还可看到,该程序的内部RAM的使用量(data=8.0),外部RAM的使用量(xdata=0),代码量(COde=13)等一些信息。7 .本实验板上所用的STC单片机通过串口下载程序。其上位机软件界面如下图。烧写操作很简单,点击“OpenFile”按钮浏览找到所生成要烧写的HeX文件后,单片机断电,点击“下载按钮,单片机上电,程序就可下载到单片机中了。总结经过这

20、次课程设计,我觉得自己学到了不少东西。大学大局部时间都是在学习理论根底知识,并未真正很好地去应用和实践。经过这次比赛,第一次接触了51系列单片机,第一次把学到的汇编语言应用于实践。学会了怎么用汇编语言编写单片机实用程序,学会了怎样去调试程序能力,对过去所学和所掌握的知识的运用,对单片机的原理及内部结构,有了一定的了解。也发现了自己很多缺乏之处,体会到了所学理论知识的重要性:知识掌握得越多,设计得就更全面、更顺利、更好。了解进行一项相比照拟大型的科技设计所必不可少的几个阶段。对于自己要设计的作品,要做好充分的认识和有一个很好的规划,以免在以后的功能扩展上的,没有留有余地,在工程的的开始就要规划好

21、,尤其是编程这一块,一定要留有余地。学会了怎样查阅资料和利用工具书。一个人不可能什么都学过,什么都懂,因此,当你在设计过程中需要用一些不曾学过的东西时,就要去有针对性地查找资料,然后加以吸收利用,以提高自己的应用能力,学会怎样去学习,学会怎样学会学习。做东西要有耐心,不管是一个很简单的小制作也好,还是比拟大型的一个工程也好,都要有始有终,当碰到问题时,不要一味的寻求的别人,要学会自己去查资料,学会分析,这样才能学到东西,解决问题以后那种带来的成就感,只有经历过的人才能懂得。实物图文献资料1张义和,陈敌北.例说8051国.北京:人民邮电出版社,2006.2杨恢先,黄辉先.单片机原理及应用M.北京:人民邮电出版社,2007.3王晓勇,张文祥,胡天云.C语言程序设计.科学出版社,2007.4李群芳,张世军,黄建.单片微型计算机与接口技术.北京:电子工业出版社,2007.5孙育才.MCS-51系列单片微型计算机及其应用.南京:东南大学出版社,1997.课程设计成绩评定表成项目比例得分绩评定平时成绩(百分制记分)30%业务考核成绩(百分制记分)70%总评成绩(百分制记分)100%评定等级优良中及格不及格指导教师(签名):20年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号