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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

单片机汽车转向信号灯设计.docx

1、单片机汽车转向信号灯设计单片机课程设计题 目:汽车转向信号灯设计 班 级: 姓 名: 学 号: 指导教师: 设计时间: 评语:成绩 目 录1引言 32设计方案及原理 42.1设计方案 42.2设计原理: 52.2.1 开关状态检测 62.2.2 输出控制 62.2.3 定时器和计数器 62.2.4 定时初始化 82.2.5 汽车转向灯显示 92.2.6 汽车转向灯控制 92.2.7 中断系统 103.硬件设计 103.1 单片机控制系统电路图 103.1.1汽车转向灯单片机控制系统框图 103.1.2 汽车转向灯单片机控制系统电路图 123.2 汽车转向灯控制系统流程图 123.2.1 汽车转

2、向灯控制系统主程序流程图 123.2.2 中断服务程序流程图 133.2.3控制系统键功能流程图 144.软件设计 144.1 程序流程图 154.2 源程序 185总结 206参考文献 22 1引言随着单片机的日益发展,其应用也越来越广泛,通过对“汽车转向灯单片机控制系统”设计,可以对单片机的知识得到巩固和扩展。本课程内容是设计一个单片机控制系统,在汽车进行左转弯、右转弯、刹车、合紧急开关、停靠等操作时,实现对各种信号指示灯的控制。本设计主要是对单片机的并行输入/输出口电路的应用,通过I/O口控制发光二极管的亮灭闪烁,加上一些复位电路按键电路驱动电路来模拟汽车尾灯的功能。汽车在驾驶时有左转弯

3、、右转弯、刹车、合紧急开关、停靠等操作。在左转弯或右转弯时,通过转弯操作杆应使左转开关或右转开关合上,从而使左头灯、仪表板左转弯灯、左尾灯或右头灯、仪表板右转弯灯、右尾灯闪烁;合紧急开关时要求前面所述的6个信号灯全部闪烁;汽车刹车时,两个尾灯点亮;如正当转弯时刹车,则转弯时原应闪烁的信号灯仍应闪烁。以上闪烁,都是频率为1Hz的低频闪烁;在汽车停靠而停靠开关合上时,左头灯、右头灯、左尾灯、右尾灯按频率为10Hz的高频闪烁。闪光器是通过调节镍铬丝的拉力和触点的间隙来满足频率要求的,灯泡功率的大小也会影响闪烁频率。因此在更换闪光器或灯泡时调整比较困难。同时,系统没有故检测,驾驶员无法知道车外的转向灯

4、及示宽灯是否点亮,从而影响行车安全。到目前为止,我们还没有发现能检测灯丝断这种故障的有效方法。针对上述问题,我们用AT89C51单片机设计了一套汽车信号灯控制系统。用LED产生闪光信号,同时能自动检测信号灯故障。信号灯灯具的发展是随着汽车制造技术及电光源技术的发展而逐步完善的。它经历了机油(或煤油)灯、乙炔气灯到电光源灯的发展历程。现代汽车信号灯灯具已经开始使用发光二极管(LED)技术以及光导技术。2设计方案及原理2.1设计方案:如图2.1所示,汽车转向灯主要有单片机、按键、复位、时钟、电源、故障检测电路、LED显示电路组成最基本的单片机系统。单片机本身的功能强大,汽车转向灯的驱动用单片机本身

5、的驱动来驱动。使得单片机的功能得到充分的运用。本方案的故障检测电路具有故障监控性能,他能提高系统的可靠性。图2.1汽车转向灯控制系统硬件构成2.2设计原理:由定时器/计数器与中断系统的联合组成控制系统的工作原理。如汽车上有一个转弯控制杆,其中有三个位置:中间位置,汽车不转弯;向上,汽车左转;向下汽车右转。转弯时,规定左右尾灯、左右头灯仪表板上2个指示灯相应地发出闪烁信号。应急开关合上时,6个信号灯都应闪烁。汽车刹车时,2个尾灯发出不闪烁信号。如正当转弯时刹车,转弯时原应闪烁的信号仍应闪烁。它们都是频率为1Hz低频闪烁,在汽车停靠而停靠开关合上时,左头灯、右头灯、左尾灯、右尾灯按频率为10Hz频

6、率快速闪烁。任何在下表中未出现的组合,都将出现故障指示灯闪烁,闪烁频率为10Hz。表1 汽车驾驶操纵与信号驾驶操作输出信号左转弯灯右转弯灯左头灯右头灯左尾灯右尾灯左转弯(合上左转弯开关)闪烁灭闪烁灭闪烁灭右转弯(合上右转弯开关)灭闪烁灭闪烁灭闪烁合紧急开关闪烁闪烁闪烁闪烁闪烁闪烁刹车(合刹车开关)灭灭灭灭亮亮左转弯时刹车闪烁灭闪烁灭闪烁亮右转弯时刹车灭闪烁灭闪烁亮闪烁刹车时合紧急开关闪烁闪烁闪烁闪烁亮亮左转弯时刹车合紧急开关闪烁闪烁闪烁闪烁闪烁亮右转弯时刹车合紧急开关闪烁闪烁闪烁闪烁亮闪烁停靠(合停靠开关)灭灭闪烁(10Hz)闪烁(10Hz)闪烁(10Hz)闪烁(10Hz)2.2.1 开关状态

7、检测开关状态检测,对AT89C51来说是输入关系,可轮流检测每个开关状态,以每个开关的状态让相应的发光二极管指示,采用JNB P1.X,REL 指令来完成;也可以一次性检测五路开关状态,让它指示,可以用MOV A,P1 指令一次把P1 端口的状态全部读入,取低5位的状态来指示。2.2.2 输出控制以发光二极管D1D6 来指示,此设计用SETB P0.X 和CLR P0.X 指令来完成,也可以用指令MOV P0,111XXXXXB 方法来实现。2.2.3 定时器和计数器根据任务设计要求:会用到定时器。信号的控制是定时器与中断系统的联合使用得以实现。单片机的控制系统应用中,定时器是必需的,在汽车转

8、向灯的控制中也是必不可少。定时有三种选择方法。(1)软件的定时它是靠执行一个循环程序以进行时间的延迟。软件定时的优点是时间精确,且不需外加硬件电路。但它要增加CPU开销,因此软件定时的时间不能太长。此外,软件定时方法有时候无法使用。(2)硬件的定时时间较长的定时,常使用硬件电路完成。硬件定时方法的优点是定时功能全部由硬件电路完成,不需要占CPU的时间。用元件参数来调节定时时间,这方面使用上不够灵活方便。(3)可编程定时器的定时它是通过对系统时钟脉冲的计数来实现的。计数值由程序设定,改变计数值,同时也改变了定时时间,用起来既灵活且方便。此外,采用计数方法实现定时,可编程定时器都兼有计数功能,能对

9、外来脉冲进行计数。在AT89C51内部除了有并行和串行I/O接口外,在单片机内部共有2个可编程的定时器和计数器,称定时器/计数器0和定时器/计数器1,这两个计数器由TH0,TL0,TH1,TL1两个8位的RAM单元组成,即每个计数器都是16位的计数器,最大的计数量时65536。定时器/计数器计数功能和定时功能:(1)计数器功能记数是指对外部事件进行计数。它的发生以输入脉冲表示,计数功能的实质就是对外来的脉冲进行计数。AT89C51芯片有T0(P3.4)和T1(P3.5)两个信号引脚,是这两个计数器的计数输入端。外部输入的脉冲在负跳变时有效,进行计数器加1(加法计数)。AT89C51在每个机器周

10、期的S5P2拍节对外部计数脉冲进行采样。前一个机器周期采用为高电平,后一个机器周期采样为低电平,是一个有效的计数脉冲。在下一机器周期的S3P1进行计数。采样计数脉冲是在2个机器周期进行的。计数脉冲频率不能高于振荡脉冲频率的1/24。(2)定时器功能实际也是通过计数器来实现的,但此时的计数脉冲来自单片机的内部,也每个机器周期计数器加1。一个机器周期等于12个振荡脉冲周期,因此计数频率为振荡频率的1/12。单片机采用12MHz晶体,计数频率为1MHz。每微妙计数器加1。根据计数值计算出定时时间,也可以反过来按定时时间的要求计算出计数器的预置值。它是一个二进制的加1计数器。在计数器计满回零时能自动产

11、生溢出中断请求。则已经完成。T1、T2的最大计数值65536-1,需65535个脉冲才能把它们从全“0”状态变为全“1”状态。输一个脉冲,计数器加1,当加到计数器各位全为1时,再去输一个脉冲,计数器各位就变为全0,发出溢出信号,使标志置1,此时向CPU申请中断。具体结构如图2.2所示:图2.2 定时器/记数器的结构2.2.4 定时初始化定时主要与编程有关。编程对定时器控制寄存器(TCON)、工作方式控制寄存器(TMOD)和中断允许控制寄存器(IE)进行操作。(1)定时器控制寄存器(TCON)TCON寄存器既参与中断控制又参与定时控制。其中有关定时的控制位共有4位:TF0和TF1-记数溢出标志位

12、TR0和TR1-定时器运行控制位TR0(TR1)=0-停止定时器/计数器工作TR0(TR1)=1-启动定时器/计数器工作该位根据需要以软件方法使其置“1”或清“0”。(2)中断允许控制寄存器IE寄存器中与定时器/计数器有关的位置介绍:EA-中断允许总控制位ET0和ET1-定时/计数中断允许控制位ET0(ET1)=0 禁止定时/记数中断ET0(ET1)=1 允许定时/记数中断利用MCS-51系列单片机的可编程定时/计数器、中断系统来实现灯闪烁的延时和故障检测。(3)工作方式控制寄存器(TMOD)TMOD寄存器专用寄存器,设定两个定时器/计数器的工作方式。它的低半字节定义定时器/计数器0,高半字节

13、定义定时器/计数器1。各位定义如表2所示:表2 TMOD各位定义位序B7B6B5B4B3B2B1B0位符号GATEC/M1M0GATEC/M1M0其中:GATE-门控位 GATE=0 以运行控制位TR启动定时器 GATE=1 以外中断请求信号(INT1或INT0)启动定时器 C/-定时方式或计数方式选择位 C/=0 定时工作方式 C/=1 计数工作方式 M1M0-工作方式选择位 M1M0=00 方式0 M1M0=01 方式1 M1M0=10 方式2 M1M0=11 方式3初值计算:(1)设为工作方式0,定时时间为30ms,使灯延时闪烁。若使用定时器T0,方式1,30ms定时,fosc=12MH

14、z。则初值X满足(216-X)1=30000X=3553610001010110100008AD0H(2)设计中利用定时器/计数器0,一个软件计数器产生低频(1HZ)闪烁功能。(3)利用定时器/计数器0来产生为时30ms的定时信号,以实现高频(30HZ)闪烁功能。(4)注意在用工作方式1时,我们必须要重新装载初值。2.2.5 汽车转向灯显示在汽车转弯或应急状态下,外部信号灯和仪表板它们指示灯的闪烁频率为1HZ,称低频信号。当停靠开关合上时,外部信号灯以10HZ频率闪烁此时为高频信号。2.2.6 汽车转向灯控制汽车转弯灯设计5个按键控制信号灯的转向、停靠、应急等。按键安排见下:S1键为刹车开关;

15、S2键为紧急开关;S3键为停靠开关;S4键为左转弯开关;S5键为右转弯开关;2.2.7 中断系统单片机中断技术主要用于实时控制,在单片机上有两个引脚,即INT0、INT1。外部的中断信号通过这两个引脚输入到单片机,和单片机的定时器一样,对中断系统的处理需要通过C51的软件编程实现。利用MCS-51系列单片机的可编程定时/计数器、中断系统来实现灯闪烁的延时和故障检测。它的重要作用有如下四点:第一,高速CPU和低速外设之间的配合。利用中断方式进行的I/O口操作,在宏观上可以看成CPU和外设的并行工作。第二,实现故障的紧急处理。当外设发生故障时,可以利用中断系统请求CPU及时处理这些故障。第三,可以

16、实现实时控制。3.硬件设计3.1 单片机控制系统电路图3.1.1汽车转向灯单片机控制系统框图汽车转向灯单片机控制系统电路是由单片机AT89C51、复位、电源、时钟、LED显示电路、故障检测电路、按键电路构成。电源电路给控制相关电路提供所需电源;复位电路供上电或按键时复位用。当要求重新启动单片机或者单片机处于死循环时,都可以由此电路来实现;时钟电路用来产生时钟脉冲信号,供工作使用;通过并行I/O口构成键盘和显示电路,输入程序,即可实现汽车转向灯中各信号灯的功能操作;系统的可靠性有所提高。汽车转向灯单片机控制系统框图如图3.1所示。图3.1 控制系统3.1.2 汽车转向灯单片机控制系统电路图汽车转

17、向灯单片机控制系统仿真电路如图3.2所示图3.2 汽车转向灯控制仿真电路图3.2 汽车转向灯控制系统流程图3.2.1 汽车转向灯控制系统主程序流程图控制系统主程序流程图如图3.2.1所示 图3.2.1 控制系统主程序流程图3.2.2 中断服务程序流程图中断服务的程序流程图如图3.2.2所示。图3.2.2 中断服务的程序流程图3.2.3控制系统键功能流程图键的功能程序流程图如图3.2.3所示。图3.2.3 键的功能程序流程图4.软件设计4.1 程序流程图流程图如下:(1) 主程序流程图如图4.1 主程序图4.1主程序(2) 子程序流程图如下图 图4.2 表示左转 图4.3 表示右转 图4.5 表

18、示刹车 图4.4 表示紧急图4.6 左转刹车 图4.7 右转刹车图4.8 紧急刹车 图4.9 左转紧急刹车 图4.10 右转紧急刹车 图4.11 停靠4.2 源程序源程序如下: ORG 0000H AJMP START1 ORG 0030HSAME EQU 4EHSTART1: MOV P1,#00H ;无输入时无输出START: MOV A,P3 ;读P3口数据 ANL A,#1FH ;取用P3口的低五位数据 CJNE A,#1FH,SHIY ;对P3口低五位数据进行判断 AJMP START1SHIY: MOV SAME,A LCALL YS ;延时 MOV A,P3 ;读P3口的数据 A

19、NL A,#1FH ;取用P3口的低五位数据 CJNE A,#1FH,SHIY1 ;对P3口的低五位数据进行判断 AJMP START1 ;开关没有动作时无输出SHIY1: CJNE A,SAME,START1 CJNE A,#17H,NEXT1 ;P3.3=0时进入左转分支 AJMP LEFTNEXT1: CJNE A,#0FH,NEXT2 ;P3.4=0时进入右转分支 AJMP RIGHTNEXT2: CJNE A,#1DH,NEXT3 ;P3.1=0时进入紧急分支 AJMP EARGENEXT3: CJNE A,#1EH,NEXT4 ;P3.0=0时进入刹车分支 AJMP BRAKENE

20、XT4: CJNE A,#16H,NEXT5 ;P3.0=P3.3=0时进入左转刹车分支 AJMP LEBRNEXT5: CJNE A,#0EH,NEXT6 ;P3.0=P3.4=0时进入右转刹车分支 AJMP RIBRNEXT6: CJNE A,#1CH,NEXT7 ;P3.0=P3.1=0时进入紧急刹车分支 AJMP BRERNEXT7: CJNE A,#14H,NEXT8 ;P3.0=P3.1=P3.3=0时进入左转紧急刹车分支 AJMP LBENEXT8: CJNE A,#0CH,NEXT9 ;P3.0=P3.1=P3.4=0时进入右转紧急刹车分支 AJMP RBENEXT9: CJN

21、E A,#1BH,NEXT10 ;P3.2=0时进入停靠分支 AJMP STOPNEXT10: AJMP ERROR ;其他情况进入错误分支LEFT: MOV P1,#2AH ;左转分支 LCALL Y1s MOV P1,#00H LCALL Y1s AJMP STARTRIGHT: MOV P1,#54H ;右转分支 LCALL Y1s MOV P1,#00H LCALL Y1s AJMP STARTEARGE: MOV P1,#7FH ;紧急分支 LCALL Y1s MOV P1,#00H LCALL Y1s AJMP STARTBRAKE: MOV P1,#60H ;刹车分支 AJMP

22、STARTLEBR: MOV P1,#6AH ;左转刹车分支 LCALL Y1s MOV P1,#40H LCALL Y1s AJMP STARTRIBR: MOV P1,#74H ;右转刹车分支 LCALL Y1s MOV P1,#20H LCALL Y1s AJMP STARTBRER: MOV P1,#7EH ;紧急刹车分支 LCALL Y1s MOV P1,#60H LCALL Y1s AJMP STARTLBE: MOV P1,#7EH ;左转紧急刹车分支 LCALL Y1s MOV P1,#40H LCALL Y1s AJMP STARTRBE: MOV P1,#7EH ;右转紧急

23、刹车分支 LCALL Y1s MOV P1,#20H LCALL Y1s AJMP STARTSTOP: MOV P1,#66H ;停靠分支 LCALL Y100ms MOV P1,#00H LCALL Y100ms AJMP STARTERROR: MOV P1,#80H ;错误分支 LCALL Y1s MOV P1,#00H LCALL Y1s AJMP STARTYS: MOV R7,#20H ;延时YS0: MOV R6,#0FFHYS1: DJNZ R6,YS1 DJNZ R7,YS0 RETY1s: MOV R7,#04H ;延时Y1s1: MOV R6,#0FFHY1s2: MO

24、V R5,#0FFH DJNZ R5,$ DJNZ R6,Y1s2 DJNZ R7,Y1s1 RETY100ms: MOV R7,#66H ;延时Y100ms1:MOV R6,#0FFHY100ms2:DJNZ R6, Y100ms2 DJNZ R7, Y100ms1 RET END5总结本系统基于MCS-51开发平台,充分利用了51单片机的各引脚功能,同时有效利用了中断、查询、定时器、计数器,使得汽车转向信号灯控制得以实现。通过这次课程设计,我们对于单片机应用有了更深的了解,单片机应用技术发展迅速,有着广阔的应用前景,涉及面广,内容丰富。它用软件的方法设计硬件,并用软件方式设计的软件系统到硬

25、件系统的转换是由有关的开发软件自动完成的。在设计过程中可用有关软件进行各种仿真,同时系统可现场编程,在线升级等。整个系统可集成在一个芯片上,体积小,功耗低,可靠性高。其技术以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方法,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件方式设计的电子系统到硬件系统的逻辑编译,逻辑化简,逻辑分割,逻辑综合及优化,逻辑布局布线,逻辑仿真,直至特定目标芯片的适配便宜,逻辑映射,编程下载等工作,为系统的设计开发带来了极大地方便。在课程设计过程中,我利用网络查找了大量资料,同时得到了指导老师

26、的耐心指导。通过这次课程设计的实践,我对汇编语言的掌握有了更进一步的提高,在单片机的编程应用方面也更加熟练了。总的来说,这是一次利用专业基础知识解决实际问题的实践活动,我受益匪浅。特别是在程序的编写调试,以及仿真电路的绘制方面,使我得到了一次用专业知识、专业技能分析和解决问题的全面的系统的锻炼。这次课程设计使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步,为日后嵌入式程序开发的学习打下了良好的基础。6参考文献1 江力. 单片机原理与应用技术【M】北京:清华大学出版社:2 张洪润. 单片机应用技术【M】北京:清华大学出版社:3 张毅刚. MC-51单片机原理及应用【M】哈尔滨:哈尔滨工业大学出版社:

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

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