单片机原理及应用课程设计
2.4 74LS240芯片介绍
74LS240是八反相缓冲器/线驱动器芯片,这种八缓冲器和线驱动器是为提
高三态输出存储地址驱动器、时钟驱动器和总线定向接收器和发射器的性能和集成度而特意设计的,设计者可按需要将原码、反码输出、对称G非(有效低电平输出控制)输入和互补输入G和G非组合使用。此电路的特点是,扇出高、扇入好、噪声容限高(400mV)。可用来驱动小到133Ω的终端负载线。其引脚图入图2-3所示。
图2-3 74LS240引脚图
2.5
硬件原理框图
在本系统中要求制作出汽车信号灯微机控制系统,控制的信号灯有仪表板左、右转弯灯,左、右头灯和左、右尾灯共六类灯,在不同操作控制下可驱动对应的灯闪烁或长亮。在系统中,利用开关在状态的变化来模拟汽车驾驶操作。单片机检测到相应的开关状态类别,产生与此状态相符合的控制信号,使信号灯闪烁或长亮。由于本设计在DVCC—dv52196实验箱上模拟的实现,其本身很多电路无法改变,所以其硬件框图如图2-4所示。
11
单片机原理及应用课程设计
开关 控制 左转右转信号 AT89C51 单片机 74LS240芯片 驱动 信号灯 紧急或停靠信号
图2-4 系统硬件框图
根据图2-4可知,可以合上开关来改变状态,即合上相应的开关后,就代表一种汽车驾驶操作。然后单片机检测到相应状态,然后判断属于那一类别,再利用软件来产生相应控制信号,经74LS240后来驱动汽车信号灯(发光二极管)在闪烁或长亮。 2.6 电路原理图
本设计是在DVCC—dv52196实验箱平台上设计的,所以根据设计环境和图2-4的系统框图,可得本系统的电路原理图如图2-5所示。
图2-5 汽车信号灯控制系统原理图
12
单片机原理及应用课程设计
2.7
设计连线
由图2-5中可得本设计的连线为:5个开关K1—K5分别接到单片机的
P3.1—P3.5口,然后发光二极管L1—L6分别连接到单片机的P1.0—P1.5口。其余不再需要任何连线,因为在DVCC—dv52196实验箱内已经连接好,可以直接使用。这样很大程度简化了连线的步骤,使设计方便快捷。
2.8 工作原理说明
由于在本设计在DVCC—dv52196实验箱平台上,利用PC机资源和DVCC—dv52196实验箱上的资源,其内部很多芯片之间的连接都已经接好,所以很方便的实现设计要求。
由汽车信号灯控制系统原理图2-4中可以看出,本系统中AT89C51为控制核心,其中P3.0—P3.4做为输入口,P1.0—P1.5为输出口。当相应开关合上的的时候,开关状态将发生变化,从而产生输入信号;在单片机读入开关状态后,通过软件来判断属于那一类信号,并实现汽车信号灯的控制,然后输出到P1.0—P1.5口,经过74LS240后来驱动汽车信号灯(发光二极管)做出相应的闪烁或长亮;比如当K1左转弯开关拨动的时候,单片机就驱动汽车信号灯L1、L3闪烁,当合上开关K2的时候,L2、L4亮。当K1K2同时合上的时候,所有灯都熄灭;当再拔动其他开关的时候也随即产生与之相对应的信号驱动汽车信号灯闪烁或长亮。
13
单片机原理及应用课程设计
第三章 软件设计方案
3.1 软件设计思想
软件部分与硬件部分一起构成一个完整的系统,对整个系统来说起着重要的
作用。在本设计中使用了散传程序的设计方法,它根据系统的某种运算结果,分别转向各个处理程序。该方法利用JMP @A+DPTR,根据运算结果,确定A和DPTR的内容,从而实现转移。用该方法 设计的程序结构简单、转移表短,但转移表大小加上各个程序长度必须小于256字节。 3.2 程序流程图
根据软件的设计思想,可画出本系统程序流程图如图3-1所示。
程序入口 P3.0,P3.1,P3.2,P3.3,P3.4置“1” 读入开关K1,K2,K3,K4,K5状态 判断开关状态 K1/K2=1,其余开关为0,驱动L1/L2和L3/4闪烁 K3=1,其余开关为0,所有灯闪烁 K4=1,其余开关为0,L5和L6亮 K1=K2=K4=1,其余为0,L1、L2、L3、L4闪烁,其余灯亮 K4=K5=1其余为0,L1、L2、L3、L4闪烁,其余灯亮 K1=K2=1,K3=1,其余为0,L5、L6亮,其余灯闪烁 K5=1,其余为0,L5 L6以30 HZ频率闪烁 图3-1 系统程序流程图
14
单片机原理及应用课程设计
3.3 程序清单
;---------------------------------------- ;----------单片机及应用原理课程设计------ ;-------------汽车信号灯控制系统--------- ;------------L1左转弯灯,L2右转弯灯------- ;------------L3左头灯,L4右头灯----------- ;------------L5左尾灯,L6右尾灯----------- ;---------------------------------------- ORG 0000H LJMP BEGAIN
BEGAIN: MOV P3,0FFH ;P3口置“1”,为输入做准备 MOV A,P3 ANL A,#1Fh
;读如开关状态
MOV DPTR,#TABLE RL A
;累加器乘2
JMP @A+DPTR TABLE: AJMP GO0 AJMP GO1 AJMP GO2 AJMP GO3 AJMP GO4 AJMP GO5 AJMP GO6 AJMP GO7 AJMP GO8 AJMP GO9
;同时打开 ;K1合上,K2打开 ;K2合上K1打开 ;K1K2同时合上 ;K3合上 ;K1,K3和尚 ;k2k3合上 ;K1K2K3合上 ; K4合上 ;K1K4合上
15