当前位置:文档之家› 单片机报告-汽车转向灯

单片机报告-汽车转向灯

单片机原理及系统课程设计
专业:
班级:
姓名:
学号:
指导教师:
兰州交通大学自动化与电气工程学院
2014 年 7月 1日
1 引言
随着单片机的日益发展,其应用也越来越广泛,通过对“汽车转向灯单片机控制系统”设计,可以对单片机的知识得到巩固和扩展。

本课程内容是设计一个单片机控制系统,在汽车进行左转弯、右转弯、刹车、合紧急开关、停靠等操作时,实现对各种信号指示灯的控制。

本设计主要是对单片机的并行输入/输出口电路的应用,通过I/O口控制发光二极管的亮﹑灭﹑闪烁,加上一些复位电路﹑按键电路﹑驱动电路来模拟汽车尾灯的功能。

2 设计方案及原理
汽车转向灯主要有单片机、按键、复位、时钟、电源、故障检测电路、LED显示电路组成最基本的单片机系统。

单片机本身的功能强大,汽车转向灯的驱动用单片机本身的驱动来驱动。

使得单片机的功能得到充分的运用。

本方案的故障检测电路具有故障监控性能,他能提高系统的可靠性。

由定时器/计数器与中断系统的联合组成控制系统的工作原理。

如汽车上有一个转弯控制杆,其中有三个位置:中间位置,汽车不转弯;向上,汽车左转;向下汽车右转。

转弯时,规定左右尾灯、左右头灯仪表板上2个指示灯相应地发出闪烁信号。

应急开关合上时,6个信号灯都应闪烁。

汽车刹车时,2个尾灯发出不闪烁信号。

如正当转弯时刹车,转弯时原应闪烁的信号仍应闪烁。

它们都是频率为1Hz低频闪烁,在汽车停靠而停靠开关合上时,左头灯、右头灯、左尾灯、右尾灯按频率为10Hz频率快速闪烁。

任何在下表中未出现的组合,都将出现故障指示灯闪烁,闪烁频率为10Hz。

3 系统硬件设计
3.1 AT89C51单片机介绍
AT89C51单片机有以下部件构成:八位微处理器、振荡电路、总线控制部件、中断控制部件、片内Flash存储器、片内RAM、并行I/O接口、定时器和串行I/O 接口。

AT89C51单片机内部由CPU、4KB的FPEROM,128B的RAM,两个16位的定时器/计数器T0和T1,4个8位的I/O端P0、P1、P2、P3等组成。

汽车转向灯单片机控制系统电路是由单片机AT89C51、复位、电源、时钟、LED显示电路、故障检测电路、按键电路构成汽车转向灯单片机控制系统框图如图3.1所示。

图3.1 汽车转向灯单片机控制系统框图
3.2 系统电路图
系统原理图如图3.2所示: Array
图3.2汽车转向灯控制硬件接线图
4 系统软件设计
汽车转向灯控制系统主程序流程如图4.1所示,源程序清单见附录1。

图4.1 汽车转向灯控制系统主程序流程图
键的功能程序流程图如图4.2所示,主程序及子程序流程图见附录2。

图4.2 键的功能程序流程图
5 总结
本系统基于MCS-51开发平台,充分利用了51单片机的各引脚功能,同时有效利用了中断、查询、定时器、计数器,使得汽车转向信号灯控制得以实现。

通过这次课程设计,用软件的方法设计硬件,并用软件方式设计的软件系统到硬件系统的转换是由有关的开发软件自动完成的。

在设计过程中可用有关软件进行各种仿真,同时系统可现场编程,在线升级等。

整个系统可集成在一个芯片上,体积小,功耗低,可靠性高。

其技术以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方法,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件方式设计的电子系统到硬件系统的逻辑编译,逻辑化简,逻辑分割,逻辑综合及优化,逻辑布局布线,逻辑仿真,直至特定目标芯片的适配便宜,逻辑映射,编程下载等工作,为系统的设计开发带来了极大地方便。

参考文献
[1] 孙涵芳,徐爱卿.MCS-51.96系列单片机原理及应用[M].北京:北京航空航天大学出版社,1988.
[2] 徐爱钧,彭秀华.Keil Cx51 V7.0单片机高级语言编程与μVision2应用实践[M].北京:电子工
业出版社,2006.
[3] 张毅坤.单片微型计算机原理及应用[M].陕西:西安电子科技大学出版社,1988.
附录1 源程序代码
ORG 0000H
AJMP START1
ORG 0030H
SAME EQU 4EH
START1:MOV P1,#00H ;无输入时无输出
START: MOV A,P3 ;读P3口数据
ANL A,#1FH ;取用P3口的低五位数据
CJNE A,#1FH,SHIY ;对P3口低五位数据进行判断
AJMP START1
SHIY: MOV SAME,A
LCALL YS ;延时
MOV A,P3 ;读P3口的数据
ANL A,#1FH ;取用P3口的低五位数据
CJNE A,#1FH,SHIY1 ;对P3口的低五位数据进行判断
AJMP START1 ;开关没有动作时无输出
SHIY1: CJNE A,SAME,START1
CJNE A,#17H,NEXT1 ;P3.3=0时进入左转分支
AJMP LEFT
NEXT1: C JNE A,#0FH,NEXT2 ;P3.4=0时进入右转分支AJMP RIGHT
NEXT2: C JNE A,#1DH,NEXT3 ;P3.1=0时进入紧急分支AJMP EARGE
NEXT3: C JNE A,#1EH,NEXT4 ;P3.0=0时进入刹车分支AJMP BRAKE
NEXT4: C JNE A,#16H,NEXT5 ;P3.0=P3.3=0时进入左转刹车分支AJMP LEBR
NEXT5: C JNE A,#0EH,NEXT6 ;P3.0=P3.4=0时进入右转刹车分支AJMP RIBR
NEXT6: C JNE A,#1CH,NEXT7 ;P3.0=P3.1=0时进入紧急刹车分支AJMP BRER
NEXT7: C JNE A,#14H,NEXT8 ;P3.0=P3.1=P3.3=0时进入左转紧急
刹车分支
AJMP LBE
NEXT8: C JNE A,#0CH,NEXT9 ;P3.0=P3.1=P3.4=0时进入右转紧急
刹车分支
AJMP RBE
NEXT9: C JNE A,#1BH,NEXT10 ;P3.2=0时进入停靠分支AJMP STOP
NEXT10:AJMP ERROR ;其他情况进入错误分支LEFT: MOV P1,#2AH ;左转分支
LCALL Y1s
MOV P1,#00H
LCALL Y1s
AJMP START
RIGHT: MOV P1,#54H ;右转分支
LCALL Y1s
MOV P1,#00H
LCALL Y1s
AJMP START
EARGE:MOV P1,#7FH ;紧急分支
LCALL Y1s
MOV P1,#00H
LCALL Y1s
AJMP START
BRAKE:MOV P1,#60H ;刹车分支
AJMP START
LEBR: MOV P1,#6AH ;左转刹车分支LCALL Y1s
MOV P1,#40H
LCALL Y1s
AJMP START
RIBR: MOV P1,#6AH ;右转刹车分支LCALL Y1s
MOV P1,#40H
LCALL Y1s
AJMP START
BRER: MOV P1,#7EH ;紧急刹车分支LCALL Y1s
MOV P1,#60H
LCALL Y1s
AJMP START
LBE: MOV P1,#7EH ;左转紧急刹车分支LCALL Y1s
MOV P1,#40H
LCALL Y1s
AJMP START
RBE: MOV P1,#7EH ;右转紧急刹车分支LCALL Y1s
MOV P1,#20H
LCALL Y1s
AJMP START
STOP: MOV P1,#66H ;停靠分支
LCALL Y100ms
MOV P1,#00H
LCALL Y100ms
AJMP START
ERROR:MOV P1,#80H ;错误分支
LCALL Y1s
MOV P1,#00H
LCALL Y1s
AJMP START
YS: MOV R7,#20H ;延时
YS0: MOV R6,#0FFH
YS1: DJNZ R6,YS1
DJNZ R7,YS0
RET
Y1s: MOV R7,#04H ;延时
Y1s1: MOV R6,#0FFH
Y1s2: MOV R5,#0FFH
DJNZ R5,$
DJNZ R6,Y1s2
DJNZ R7,Y1s1
RET
Y100ms:MOV R7,#66H ;延时
Y100ms1:MOV R6,#0FFH
Y100ms2:DJNZ R6, Y100ms2
DJNZ R7, Y100ms1
RET
END
附录2 程序流程图
(1) 主程序流程图如图2.1所示。

图2.1 主程序流程图
(2) 子程序流程图如图2.2~2.6所示。

图2.2 表示左转 图2.3 表示右转
单片机原理及系统课程设计报告
- 10 -
图2.4 表示紧急 图2.5 表示停靠
图2.6 表示刹车。

相关主题