版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
沈阳理工大学单片机课程设计PAGEPAGE1摘要在生活的环境中,自动控制要求中都会有单片机的控制的一部分;从简单到复杂,凡是能想象到的地方几乎都有使用单片机的需求。单片机的应用有利于产品的小型化、多功能化和智能化,能够提高劳动效率、减轻劳动强度,提升产品质量,改善劳动环境。例如,在工业自动化方面:自动化能使工业系统处于最佳状态、提高经济效益和改善产品质量。自动化控制原理有应用于电子、电力、石油、化工、纺织、食品等轻重工业领域中,无论数据采集和测控技术,还是生产线上的机器人技术,都有单片机的参与。有时,在仪器仪表、信息和通信等产品方面,它在其中发挥着重大作用。现在,虽然单片机的应用很普遍了,但仍有许多项目尚未实现,所以单片机的应用有很大的发展空间。本设计是设计一个单片机控制系统。在汽车进行左转弯、右转弯、刹车、合紧急开关等操作时,实现对各种信号指示灯的控制。本设计主要是对单片机的并行输入/输出口电路的应用,通过I/O口控制发光二极管的亮﹑灭﹑闪烁,加上一些复位电路﹑按键电路﹑驱动电路来模拟汽车尾灯的功能。汽车在驾驶时有左转弯、右转弯、刹车、合紧急开关等操作。在左转弯或右转弯时,通过转弯操作杆应使左转开关或右转开关合上,从而使左头灯、左尾灯或右头灯、右尾灯闪烁;合紧急开关时要求前面所述的4个信号灯全部闪烁;汽车刹车时,两个尾灯点亮。目录1.绪论 11.1设计意义 11.2设计内容 11.3设计过程 12.设计的原理分析及实现 22.1系统简介 22.2硬件组成 22.3设计原理 33.应用软件简介 43.1单片机简介 43.2AT89C51单片机简介 43.3Proteus软件介绍 84.硬件设计 104.1AT89C51芯片图 104.2汽车信号灯控制电路 104.2.1硬件接线图 104.2.2复位电路 114.2.3显示电路 114.2.4按键电路 124.2.5振荡电路 134.3Proteus仿真结果 145.软件设计 175.1汽车信号灯控制程序 175.2汽车信号灯控制程序流程图 195.3利用伟福软件编译程序图 205.3.1伟福软件简介 205.3.2伟福软件编译程序图 216.心得体会 227.参考文献 233.应用软件简介3.1单片机简介单片机是一种集成在电芯路片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。诚然,单片机的应用意义远不限于它的应用范畴或由此带来的经济效益,更重要的是它已从根本上改变了传统的控制方法和设计思想。是控制技术的一次革命,是一座重要的里程碑单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:在智能仪器仪表上的应用;在工业控制中的应用;在家用电器中的应用;在计算机网络和通信领域中的应用;单片机在医用设备领域中的应用;在各种大型电器中的模块化应用;单片机在汽车设备领域中的应用。3.2AT89C51单片机简介AT89C51是ATMEL公司生产的低电压,高性能的CMOS8位单片机,片内含4Kbytes的可反复擦写和只读程序存储器(PEROM)和128bytes的随机存取数据存储器,器件采用ATMEL公司的高密度、非易失性存储技术,兼容标准MCS-51指令系统,片内置通用8位中央处理器和FLASH存储单元。其引脚图如图3-1所示。其主要性能参数为:与MCS-51产品指令系统完全兼容4k字节可重擦写Flash闪速存储器1000次擦写周期全静态操作:0Hz-24MHz三级加密程序存储器128X8字节内部RAM32个可编程I/O口线2个16位定时/计数器6个中断源可编程串行UART通道低功耗空闲和掉电模式图3-1AT89C51引脚图AT89C51提供以下标准功能:4K字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可隆至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一硬件复位。引脚功能说明:Vcc:电源电压GND:地P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总路线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。中断控制片内Flash存储器片内中断控制片内Flash存储器片内RAMETC定时器1定时器0CPU振荡器总线控制I/O接口串行接口P0P2P1P3外部中断TXDRXD计数器输出图3-2AT89C51内部结构图P1口:P1是一个内部带上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路.对端口写“1”,通过内部的上拉电阻把端口拉到高电平,些时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。Flash编程和程序校验期间,P1接收低8位地址。P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路.对端口写“1”,通过内部的上拉电阻把端口拉到高电平,些时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。Flash编程或校验时,P2亦接收高位地址和其它控制信号。P3口:P3口是一组带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写”1”,通过内部的上拉电阻把端口拉到高电平,些时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如下所示:I/O口线专用功能P3.0RxD(串行数据接收)P3.1TxD(串行数据发送)P3.2INT0(外部中断0请求输入)P3.3INT1(外部中断1请求输入)P3.4T0(定时器0外部计数脉冲输入)P3.5T1(定时器1外部计数脉冲输入)P3.6WR(外部数据存储器写信号)P3.7RD(外部数据存储器读信号)表3-1P3口功能P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存许器)。输出脉冲用于锁存地址的低8位字节.即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令ALE才会被除数激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V的编程允许电源Vcc,当然这必须是该器件是使用12V编程电压Vcc。3.3Proteus软件介绍本软件是英国Labcenterelectronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。在PROTEUS绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在PROTEUS的原理图中看到模拟的实物运行状态和过程。PROTEUS是单片机课堂教学的先进助手。PROTEUS不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。它的元器件、连接线路等却和传统的单片机实验硬件高度对应。这在相当程度上替代了传统的单片机实验教学的功能,例:元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。课程设计、毕业设计是学生走向就业的重要实践环节。由于PROTEUS提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台随着科技的发展,“计算机仿真技术”已成为许多设计部门重要的前期设计手段。它具有设计灵活,结果、过程的统一的特点。可使设计时间大为缩短、耗资大为减少,也可降低工程制造的风险。相信在单片机开发应用中PROTEUS也能茯得愈来愈广泛的应用。4.硬件设计4.1AT89C51芯片图图4-1AT89C51芯片图4.2汽车信号灯控制电路4.2.1硬件接线图图4-2硬件接线图4.2.2复位电路电平复位将复位端通过电阻与Vcc相连,按键脉冲复位是利用RC分电路产生正脉冲来达到复位的。在按键电平复位和按键脉冲复位两种简单的复位电路中,干扰易串入复位端,在大多数情况下,不会造成单片机的错误复位,但会引起内部寄存器错误复位,这里可在复位端引脚上接一个去藕电容。电阻、电容参数适宜于12MHz晶振,能保证复位信号与电平持续时间大于2个机器周期。我们采用按键电平复位的方法,电路如图4-3。图4-3复位电路4.2.3显示电路LED具有二极管的特性,但在导通之后会发光,称之为发光二极管。与普通的灯泡一样,LED导通后,随着其俩端电压的增加,电流急剧增加,所以,必须给LED串联一个限流电阻,否则一旦通电,LED会被烧坏。要用89c51单片机来控制LED,显然这个LED必须要与89c51单片机的某个脚相连。这里把LED与89c51单片机的P0脚相连。,当AT89c51单片机的第1脚是高电平时,LED不亮,当第1脚是低电平时,LED亮。但是在汽车转弯灯里要根据汽车方向来控制信号灯,而实现LED的亮与灭。图4-4显示电路4.2.4按键电路根据设计的要求,本设计选用独立式键盘。其工作原理为,单片机引脚作为输入使用,首先置“1”。当键没有被按下时,单片机引脚上为高电平;而当键被按下去后,引脚接地,单片机引脚上为低电平。是否有键按下,以及被按下的是哪一个组成键盘的按键有触点式和非触点式俩种。如图2.9所示。当开关D断开时,P1.0输入为高电平;D闭合后,P1.0输入为低电平。如图2.10所示是电路板上按键的接法,5个按键分别接到P1.0、P1.1、P1.2、P1.3和P1.4。对于这种接法,各程序可以采用不断查询的方法,其功能就是:检测是否有键闭合,判断键号并转入相应的键处理。图4-5按键电路4.2.5振荡电路采用单片机内部晶振。如图2.4所示。在MCS-51系列单片机内部有一个高增益反向放大器,其输入端为芯片引脚XTAL1,输出端为引脚XTAL2。而在芯片外部XTAL1和XTAL2之间跨接晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器。外接晶体(石英或陶瓷,陶瓷的精度不高,但价格便宜)振荡器以及电容C=1\*Arabic1和C2构成并联谐振电路,接在放大器的反馈回路中,C=1\*Arabic1和C2的大小会对振荡器频率的高低、振荡器的稳定性、起振的快速性和温度特性有一定的影响。因此建议在采用石英晶体振荡器时C=10+/-10pF,陶瓷振荡器时,C=40+/-10pF,典型值为40pF。在设计电路板时,振荡器和电容应尽量安装得与单片机靠近,以减小寄生电容的存在更好的保障振荡器稳定、可靠的工作。图4-6振荡电路4.3Proteus仿真结果按下SB1左拐弯键,左前灯LH、左后灯LR闪烁:图4-6仿真结果(1)按下SB2刹车键,左后灯LR、右后灯RR闪烁:图4-7仿真结果(2)按下SB3紧急信号键,四个灯闪烁图4-8仿真结果(3)按下SB4右拐弯键,右前灯RH、右后灯RR闪烁:图4-9仿真结果(4)5.软件设计5.1汽车信号灯控制程序程序开始ORG000HAJMP主程序ORG0050H主程序:MOVR1,#00HSB1键控制程序:MOVP1,#0FHJBP3.3,SB2键控制程序MOVR0,#0CHACALL闪灯程序SB2键控制程序:MOVP1,#0F0HJBP3.2,SB3键控制程序MOVR0,#09HACALL闪灯程序SB3键控制程序:MOVP1,#0F0HJBP3.1,SB4键控制程序MOVR0,#0FHACALL闪灯程序SB4键控制程序:MOVP1,#0F0HJBP3.0,查询完毕MOVR0,#03HACALL闪灯程序查询完毕:AJMP主程序RET闪灯程序:MOVR4,#10H闪烁循环程序:MOVP1,R0ACALL延时子程序MOVP1,R1ACALL延时子程序DJNZR4闪烁循环程序RET延时子程序:MOVA,#0FFH延时子程序第一段循环:DECAJNZ延时子程序第一段循环DJNZR3,延时子程序第一段循环RETEND程序结束5.2汽车信号灯控制程序流程图主程序开始主程序开始灯全灭SB1键按下R0#0CH左灯亮码传入R0调闪烁子程序灯全灭SB2键按下R0#09H后灯亮码传入R0调闪烁子程序灯全灭SB3键按下R0#0FH4个灯亮码传入R0调闪烁子程序灯全灭SB4键按下R0#03H右灯亮码传入R0调闪烁子程序图5-1汽车信号灯控制程序流程图5.3利用伟福软件编译程序图5.3.1伟福软件简介伟福纯仿真软件是伟福仿真器的配套软件,伟福仿真器是国内较好的仿真器之一,它能够仿真的CPU品种多、功能强。通过更换仿真头POD,可以对不同的CPU进行仿真。可仿真51系列,196系列,PIC系列,飞利蒲公司的552、LPC764、DALLAS320,华邦438等51增强型CPU。伟福纯软件仿真器具有以下特点:1.双平台:有DOS版本和Windows版本。其中Windows版本功能强大。中文界面,英文界面可任选。2.双工作模式:软件模拟仿真(不要仿真器也能模拟仿真)和硬件仿真。3.双集成环境:编辑、编译、下载、调试全部集中在一个环境下。多种仿真器,多类CPU仿真全部集成在一个环境下。这里只说明Windows版本纯软件模拟仿真的使用方法。5.3.2伟福软件编译程序图图5-2伟福软件编译程序图6.心得体会经过十天的设计,过程曲折可谓一语难尽。在此期间我也失落过,也曾一度热情高涨。从开始时满富激情到最后汗水背后的复杂心情,点点滴滴无不令我回味无长。生活就是这样,汗水预示了结果也见证了收获。劳动是人类生存生活永恒不变的话题。通过课程设计,我才真正领略到“艰苦奋斗”这一词的真正含义,我才意识到老一辈电子设计为我们的社会付出。在设计过程中,经常会遇到这样那样的情况,就是心里想着这样的编程可以行得通,但实际运行后,总是实现不了,因此耗费在这上面的时间用去很多。做课程设计同时也是对课本知识的巩固和加强,由于课本上的知识太多,平时课间的学习并不能很好的理解,而且考试内容有限,所以在这次课程设计过程中,我从根本上了解了很多很多知识点,并且对于它们在实际中的应用有了更多的认识。平时看课本时,有时问题老是弄不懂,做完课程设计,那些问题就迎刃而解了。而且还可以记住很多东西。平时看课本,这次看了,下次就忘了,认识来源于实践,实践是认识的动力和最终目的,实践是检验真理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 年产xxx核电站发电项目建议书
- 年产xx橡胶密封垫圈项目建议书
- 儿童灯项目可行性研究报告
- 2024年高性能陶瓷复合材料项目资金筹措计划书
- 中班教案:春天的小使者
- 煤矿顶板安全培训
- 2022-2023学年广东省深圳市宝安区六年级上学期期末英语试卷
- 大班空气教案11篇
- 季羡林《我的童年》说课稿
- 小班社会教案:小熊讲理啦
- 卒中防治中心建设情况汇报课件
- 锂电池仓库存储管理(一)
- 人教版数学八年级上册《13.4 课题学习 最短路径问题》说课稿2
- 2024年惠州市国资本投资集团限公司招聘29人(高频重点提升专题训练)共500题附带答案详解
- 中医科PDCA如何提高中医内科优势病种收治率
- 2024年中考(河北卷)历史真题评析 课件
- 明股实债合作完整协议
- 部编版小学道德与法治六年级上册单元测试卷及答案(全册)
- 超市经销商转场协议书
- 航空航天用带肋十字槽-编制说明
- 《人类行为与社会环境》形考任务4-国开(GD)-参考资料
评论
0/150
提交评论