一、设计目标
模拟制作一套汽车信号灯微机控制系统,该系统可以正确反映驾驶操作与灯光信号的对应关系。
二、设计要求
汽车控制所需执行的操作包含左转弯、右转弯、应急、脚刹车、手刹车,这些操作均由相应的开关状态反映,所需控制的信号灯有:仪表盘左/右转弯信号指示灯、手刹抬起信号指示灯、左右头灯和左右尾灯,其驾驶操作与灯光信号对应关系如下:
1. 左/右转弯灯开关(合上时):仪表盘左/右转弯信号指示灯、左/右头灯、左/右尾灯闪烁。
2. 紧急开关合上:所有灯闪烁。
3. 刹车(合上刹车开关):左右尾灯亮。
4. 左/右转弯刹车:左/右转弯灯、左/右头灯、左/右尾灯闪烁,右/左尾灯亮。
5. 刹车、合上应急开关:尾灯亮、仪表盘左/右转弯信号指示灯和头灯都闪烁。
6. 左/右转弯刹车,并合上紧急开关:右/左尾灯亮,其余灯闪烁。
三、课题分析
根据设计要求可以考虑到10种组合模式
通过对以上问题描述的深入分析,可总结出以下三点:
(1)通过7个发光二级管模拟两个头灯、两个尾灯和仪表盘上的两个指示灯一个手刹信号灯。
(2)利用5个开关可产生的10种组合来分别模拟左转、右转、紧急,刹车,停靠的状态,使发光二极管信号灯相应亮、灭或闪烁。
(3)通过程序或者定时/计数器控制灯的闪烁频率。用程序控制。
四 课题总体设计
控制信号灯逻辑关系表
开关 | 灯 | ||||||||||
左转 | 右转 | 应急 | 脚刹 | 手刹 | 左转指示 | 右转指示 | 左头灯 | 右头灯 | 左尾灯 | 右尾灯 | 手刹信号 |
1 | 0 | 0 | 0 | 0 | 1(闪) | 0 | 1(闪) | 0 | 1(闪) | 汽车指示灯0 | 0 |
0 | 1 | 0 | 0 | 0 | 0 | 1(闪) | 0 | 1(闪) | 0 | 1(闪) | 0 |
0 | 0 | 1 | 0 | 0 | 1(闪) | 1(闪) | 1(闪) | 1(闪) | 1(闪) | 1(闪) | 0 |
0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 |
1 | 0 | 0 | 1 | 0 | 1(闪) | 0 | 1(闪) | 0 | 1(闪) | 1 | 0 |
0 | 1 | 0 | 1 | 0 | 0 | 1(闪) | 0 | 1(闪) | 1 | 1(闪) | 0 |
0 | 0 | 1 | 1 | 0 | 1(闪) | 1(闪) | 1(闪) | 1(闪) | 1 | 1 | 0 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
(1) 当用户置开关状态为01H时,也即左转,表左转开关闭合,则仪表左灯、左头灯、左尾灯闪烁,其他灯灭。
(2) 当用户置开关状态为02H时,也即右转,表右转开关闭合,则仪表右灯、右头灯、右尾灯闪烁,其他灯灭。
(3) 当用户置开关状态为03H时,表紧急开关闭合,也即出现紧急状态时,除手刹信号灯外所有灯闪烁。
(4) 当用户置开关状态为04H时, 表踩刹车(合上刹车开关),则左尾灯、右尾灯亮,其它灯灭。
(5) 当用户置开关状态为05H时,表示汽车左转刹车,则仪表左灯、左头灯、左尾灯闪烁同时右尾灯亮,其它灯灭。
(6) 当用户置开关状态为06H时,表示汽车右转刹车,则仪表右灯、右头灯、右尾灯闪烁同时左尾灯亮,其它灯灭。
(7) 当用户置开关状态为07H时,表示汽车此时处于紧急刹车状态,则仪表左右灯,左右头灯闪烁左右尾灯亮手刹信号灯灭。
(8) 当用户置开关状态为08H时,表示汽车此时处于左转紧急刹车状态,则除手刹信号灯外全部指示灯亮。
(9) 当用户置开关状态为09H时,表示汽车此时处于右转紧急刹车状态,则除手刹信号灯外全部指示灯亮。
(10) 当用户置开关状态为0AH时,表示汽车此时在停靠,则手刹信号灯亮
所以,可以设置实验箱上的7个发光二极管的对应情况为:
灯状态 开关状态 | 仪表左灯 (L1) | 仪表右灯 (L2) | 左头灯 (L3) | 右头灯 (L4) | 左尾灯 (L5) | 右尾灯 (L6) | 手刹信号 (L7) |
1左转(01h) | 闪烁 | 灭 | 闪烁 | 灭 | 闪烁 | 灭 | 灭 |
2右转(02h) | 灭 | 闪烁 | 灭 | 闪烁 | 灭 | 闪烁 | 灭 |
3紧急(03h) | 闪 | 闪 | 闪 | 闪 | 闪 | 闪 | 灭 |
4刹车(04h) | 灭 | 灭 | 灭 | 灭 | 亮 | 亮 | 灭 |
5左转+刹车(05h) | 闪 | 灭 | 闪 | 灭 | 闪 | 亮 | 灭 |
6右转+刹车(06h) | 灭 | 闪 | 灭 | 闪 | 亮 | 闪 | 灭 |
7刹车+紧急(07h) | 闪 | 闪 | 闪 | 闪 | 亮 | 亮 | 灭 |
8左转+刹车+紧急(08h) | 亮 | 亮 | 亮 | 亮 | 亮 | 亮 | 灭 |
9右转+刹车+紧急(09h) | 亮 | 亮 | 亮 | 亮 | 亮 | 亮 | 灭 |
10停靠(0Ah) | 灭 | 灭 | 灭 | 灭 | 灭 | 灭 | 亮 |
表1 开关状态与灯状态对应表
五 课题详细设计
5.1 硬件设计
1 芯片选择
根据课题所要实现的功能,结合所学的知识进行分析,在对任务需求进行详细分析以后,在设计时,选择了五个开关、AT89C51单片机、74LS240芯片以及7只发光二极管。其中AT89C51做为控制核心,当5个开关的状态发生改变后,单片机检测到开关信号后就通过软件输出相关信号,在经过74LS240芯片来驱动7个汽车信号灯根据开关的相应状态闪烁或长亮。
2. 引脚信号定义
5个开关K1—K5分别接到单片机的P3.1—P3.5口,然后发光二极管L1—L7分别连接到单片机的P1.0—P1.6口。开关与灯的逻辑关系(1表示开关合上,0表示打开;1表示灯亮,1(闪)表示闪烁,0表示熄灭)
在本系统中要求制作出汽车信号灯微机控制系统,控制的信号灯有仪表板左、右转弯灯,左、右头灯和左、右尾灯共六类灯,在不同操作控制下可驱动对应的灯闪烁或长亮。在系统中,利用开关在状态的变化来模拟汽车驾驶操作。单片机检测到相应的开关状态类别,产生与此状态相符合的控制信号,使信号灯闪烁或长亮。由于本设计在DVCC—dv52196实验箱上模拟的实现,其本身很多电路无法改变,所以其硬件框图如图2-4所示。
系统硬件框图
3根据图2-4可知,可以合上开关来改变状态,即合上相应的开关后,就代表一种汽车驾驶操作。然后单片机检测到相应状态,然后判断属于那一类别,再利用软件来产生相应控制信号,经74LS240后来驱动汽车信号灯(发光二极管)在闪烁或长亮。
电路原理图
本设计是在DVCC—dv52196实验箱平台上设计的,所以根据设计环境和图2-4的系统框图,可得本系统的电路原理图如图2-5所示。
图2-5 汽车信号灯控制系统原理图
5.2 软件设计思想
软件部分与硬件部分一起构成一个完整的系统,对整个系统来说起着重要的作用。在本设计中使用了散传程序的设计方法,它根据系统的某种运算结果,分别转向各个处理程序。该方法利用JMP @A+DPTR,根据运算结果,确定A和DPTR的内容,从而实现转移。
1程序流程图
根据软件的设计思想,可画出本系统程序流程图如图3-1所示。
2
课程设计体会
经过这段时间的课程设计,我们最终实现了该汽车信号灯控制系统,感到特别的欣慰,期间获益颇多。将微机接口技术中的理论与实践相结合起来,对芯片的功能也有了进一步认识理解,重温了汇编语言的编程。在实验调试过程中发现问题,分析问题,如何解决问题的能力都有所提高,这对我们不久将来离开学校,投入实际工作都是很有借鉴意义的。
希望通过以后的学习,不断提升自身各方面的能力,如对专业知识的掌握程度,动手实践能力等。经过此次的课程设计,我们学会了合作。我们要形成自己的设计思想,以便在今后的专业课形成自己的风格。同时在多多锻炼自己的动手能力,以便在以后的工作能独立完成一些设计项目。
;程序清单:
;说明:L1左转弯灯,L2右转弯灯; L3左头灯,L4右头灯; L5左尾灯,L6右尾灯,L7手刹信号灯。
ORG 0000H
LJMP START
ORG 0030H
START: MOV P3,0FFH ;P3口置“1”,为输入做准备
MOV A,P3
ANL A,#1Fh ;读开关状态
MOV DPTR,#TABLE
RL A ;累加器乘2
JMP @A+DPTR
TABLE: AJMP GO0 ;K1合上,K2打开
AJMP GO1 ;K2合上K1打开
AJMP GO2 ;K3合上
AJMP GO3 ;K4合上
AJMP GO4 ;K1,K4合上
AJMP GO5 ;K2,K4合上
AJMP GO6 ;k3,k4合上
AJMP GO7 ;K1,K3,K4合上
AJMP GO8 ;k2,k3,k4合上
AJMP G09
GO0: MOV P1,#00010101B ;K1合上,其余打开,L1、L3、L5闪烁
;表示左边转弯
LOOP: LCALL DELAY ;延时1S
发布评论