单片机课程设计汽车转向信号灯设计_第1页
单片机课程设计汽车转向信号灯设计_第2页
单片机课程设计汽车转向信号灯设计_第3页
单片机课程设计汽车转向信号灯设计_第4页
单片机课程设计汽车转向信号灯设计_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、兰州交通大学课程设计单片机课程设计题 目:汽车转向信号灯设计 班 级: 电气083班 姓 名: 学 号: 200809202 指导教师: 设计时间: 2011.1.101.14 评语:成绩 1引言随着单片机的日益发展,其应用也越来越广泛,通过对“汽车转向灯单片机控制系统”设计,可以对单片机的知识得到巩固和扩展。本课程内容是设计一个单片机控制系统,在汽车进行左转弯、右转弯、刹车、合紧急开关、停靠等操作时,实现对各种信号指示灯的控制。本设计主要是对单片机的并行输入/输出口电路的应用,通过i/o口控制发光二极管的亮灭闪烁,加上一些复位电路按键电路驱动电路来模拟汽车尾灯的功能。汽车在驾驶时有左转弯、右

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

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

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

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

6、合停靠开关)灭灭10hz闪烁10hz闪烁10hz闪烁10hz闪烁2.2.1 开关状态检测开关状态检测,对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 定时器和计数器根据任务设计要求:会用到定时器。信号的控制是

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

8、间,用起来既灵活且方便。此外,采用计数方法实现定时,可编程定时器都兼有计数功能,能对外来脉冲进行计数。在at89c51内部除了有并行和串行i/o接口外,在单片机内部共有2个可编程的定时器和计数器,称定时器/计数器0和定时器/计数器1,这两个计数器由th0,tl0,th1,tl1两个8位的ram单元组成,即每个计数器都是16位的计数器,最大的计数量时65536。定时器/计数器计数功能和定时功能:(1)计数器功能记数是指对外部事件进行计数。它的发生以输入脉冲表示,计数功能的实质就是对外来的脉冲进行计数。at89c51芯片有t0(p3.4)和t1(p3.5)两个信号引脚,是这两个计数器的计数输入端。

9、外部输入的脉冲在负跳变时有效,进行计数器加1(加法计数)。at89c51在每个机器周期的s5p2拍节对外部计数脉冲进行采样。前一个机器周期采用为高电平,后一个机器周期采样为低电平,是一个有效的计数脉冲。在下一机器周期的s3p1进行计数。采样计数脉冲是在2个机器周期进行的。计数脉冲频率不能高于振荡脉冲频率的1/24。(2)定时器功能实际也是通过计数器来实现的,但此时的计数脉冲来自单片机的内部,也每个机器周期计数器加1。一个机器周期等于12个振荡脉冲周期,因此计数频率为振荡频率的1/12。单片机采用12mhz晶体,计数频率为1mhz。每微妙计数器加1。根据计数值计算出定时时间,也可以反过来按定时时

10、间的要求计算出计数器的预置值。它是一个二进制的加1计数器。在计数器计满回零时能自动产生溢出中断请求。则已经完成。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寄存器既参与

11、中断控制又参与定时控制。其中有关定时的控制位共有4位:tf0和tf1-记数溢出标志位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寄存器专用

12、寄存器,设定两个定时器/计数器的工作方式。它的低半字节定义定时器/计数器0,高半字节定义定时器/计数器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,定时时间

13、为30ms,使灯延时闪烁。若使用定时器t0,方式1,30ms定时,fosc=12mhz。则初值x满足(216-x)1=30000x=3553610001010110100008ad0h(2)设计中利用定时器/计数器0,一个软件计数器产生低频(1hz)闪烁功能。(3)利用定时器/计数器0来产生为时30ms的定时信号,以实现高频(30hz)闪烁功能。(4)注意在用工作方式1时,我们必须要重新装载初值。2.2.5 汽车转向灯显示在汽车转弯或应急状态下,外部信号灯和仪表板它们指示灯的闪烁频率为1hz,称低频信号。当停靠开关合上时,外部信号灯以10hz频率闪烁此时为高频信号。2.2.6 汽车转向灯控制汽

14、车转弯灯设计5个按键控制信号灯的转向、停靠、应急等。按键安排见下:s1键为刹车开关;s2键为紧急开关;s3键为停靠开关;s4键为左转弯开关;s5键为右转弯开关;2.2.7 中断系统单片机中断技术主要用于实时控制,在单片机上有两个引脚,即int0、int1。外部的中断信号通过这两个引脚输入到单片机,和单片机的定时器一样,对中断系统的处理需要通过c51的软件编程实现。利用mcs-51系列单片机的可编程定时/计数器、中断系统来实现灯闪烁的延时和故障检测。它的重要作用有如下四点:第一,高速cpu和低速外设之间的配合。利用中断方式进行的i/o口操作,在宏观上可以看成cpu和外设的并行工作。第二,实现故障

15、的紧急处理。当外设发生故障时,可以利用中断系统请求cpu及时处理这些故障。第三,可以实现实时控制。第四,便于人机联系。操作人员可以利用键盘等实现中断,完成人工介入。3.硬件设计3.1 单片机控制系统电路图3.1.1汽车转向灯单片机控制系统框图汽车转向灯单片机控制系统电路是由单片机at89c51、复位、电源、时钟、led显示电路、故障检测电路、按键电路构成。电源电路给控制相关电路提供所需电源;复位电路供上电或按键时复位用。当要求重新启动单片机或者单片机处于死循环时,都可以由此电路来实现;时钟电路用来产生时钟脉冲信号,供工作使用;通过并行i/o口构成键盘和显示电路,输入程序,即可实现汽车转向灯中各

16、信号灯的功能操作;系统的可靠性有所提高。汽车转向灯单片机控制系统框图如图3.1所示。at89c51按键电路时钟电路复位电路电源电路led显示电路故障检测电路图3.1 控制系统3.1.2 汽车转向灯单片机控制系统电路图汽车转向灯单片机控制系统仿真电路如图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控制系统键功能流程图键的功能程序流程图如

17、图3.2.3所示。图3.2.3 键的功能程序流程图4.软件设计4.1 程序流程图流程图如下:(1) 主程序流程图如图4.1开始初始化p1口(p3)送至a判断p3口第五位数据已确定分支功能结束图4.1(2) 子程序流程图如下图(4eh)=#0fh#54h送至p1口调用延时1s的程序#00h送至p1口调用延时1s的程序返回(4eh)=#17h#2ah送至p1口调用延时1s的程序#00h送至p1口调用延时1s的程序返回图4.2 表示左转 图4.3 表示右转(4eh)=#1eh#60h送至p1口返回(4eh)=#1dh#7fh送至p1口调用延时1s的程序#00h送至p1口调用延时1s的程序返回 图4.

18、5 表示刹车 图4.4 表示紧急(4eh)=#16h#6ah送至p1口调用延时1s的程序#40h送至p1口调用延时1s的程序返回(4eh)=#0eh#6ah送至p1口调用延时1s的程序#40h送至p1口调用延时1s的程序返回图4.6 左转刹车 图4.7 右转刹车(4eh)=#14h#7eh送至p1口调用延时1s的程序#40h送至p1口调用延时1s的程序返回(4eh)=#1ch#7eh送至p1口调用延时1s的程序#60h送至p1口调用延时1s的程序返回图4.8 紧急刹车 图4.9 左转紧急刹车(4eh)=#1bh#66h送至p1口调用延时100ms的程序#00h送至p1口调用延时100ms的程序

19、返回(4eh)=#0ch#7eh送至p1口调用延时1s的程序#20h送至p1口调用延时1s的程序返回 图4.10 右转紧急刹车 图4.11 停靠4.2 源程序源程序如下:org0000hajmpstart1org 0030hsameequ4ehstart1:movp1,#00h;无输入时无输出start:mova,p3;读p3口数据anla,#1fh;取用p3口的低五位数据cjnea,#1fh,shiy;对p3口低五位数据进行判断ajmpstart1shiy:movsame,alcallys;延时mova,p3;读p3口的数据anla,#1fh;取用p3口的低五位数据cjnea,#1fh,sh

20、iy1;对p3口的低五位数据进行判断ajmpstart1;开关没有动作时无输出shiy1:cjnea,same,start1cjnea,#17h,next1;p3.3=0时进入左转分支ajmpleftnext1:cjnea,#0fh,next2;p3.4=0时进入右转分支ajmprightnext2:cjnea,#1dh,next3;p3.1=0时进入紧急分支ajmpeargenext3:cjnea,#1eh,next4;p3.0=0时进入刹车分支ajmpbrakenext4:cjnea,#16h,next5;p3.0=p3.3=0时进入左转刹车分支ajmplebrnext5:cjnea,#0

21、eh,next6;p3.0=p3.4=0时进入右转刹车分支ajmpribrnext6:cjnea,#1ch,next7;p3.0=p3.1=0时进入紧急刹车分支ajmpbrernext7:cjnea,#14h,next8;p3.0=p3.1=p3.3=0时进入左转紧急刹车分支ajmplbenext8:cjnea,#0ch,next9;p3.0=p3.1=p3.4=0时进入右转紧急刹车分支ajmprbenext9:cjnea,#1bh,next10;p3.2=0时进入停靠分支ajmpstopnext10:ajmperror;其他情况进入错误分支left:movp1,#2ah;左转分支lcally

22、1smovp1,#00hlcally1sajmpstartright:movp1,#54h;右转分支lcally1smovp1,#00hlcally1sajmpstartearge:movp1,#7fh;紧急分支lcally1smovp1,#00hlcally1sajmpstartbrake:movp1,#60h;刹车分支ajmpstartlebr:movp1,#6ah;左转刹车分支lcally1smovp1,#40hlcally1sajmpstartribr:movp1,#74h;右转刹车分支lcally1smovp1,#20hlcally1sajmpstartbrer:movp1,#7eh

23、;紧急刹车分支lcally1smovp1,#60hlcally1sajmpstartlbe:movp1,#7eh;左转紧急刹车分支lcally1smovp1,#40hlcally1sajmpstartrbe:movp1,#7eh;右转紧急刹车分支lcally1smovp1,#20hlcally1sajmpstartstop:movp1,#66h;停靠分支lcally100msmovp1,#00hlcally100msajmpstarterror:movp1,#80h;错误分支lcally1smovp1,#00hlcally1sajmpstartys:movr7,#20h;延时ys0:movr6

24、,#0ffhys1:djnzr6,ys1djnzr7,ys0rety1s:movr7,#04h;延时y1s1:movr6,#0ffhy1s2:movr5,#0ffhdjnzr5,$djnzr6,y1s2djnzr7,y1s1rety100ms:movr7,#66h;延时y100ms1:movr6,#0ffhy100ms2:djnzr6, y100ms2djnzr7, y100ms1retend5总结本系统基于mcs-51开发平台,充分利用了51单片机的各引脚功能,同时有效利用了中断、查询、定时器、计数器,使得汽车转向信号灯控制得以实现。通过这次课程设计,我们对于单片机应用有了更深的了解,单片机应用技术发展迅速,有着广阔的应用前景,涉及面广,内容丰富。它用软件的方

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论