汽车尾灯和刹车灯控制电路毕业设计.docx
《汽车尾灯和刹车灯控制电路毕业设计.docx》由会员分享,可在线阅读,更多相关《汽车尾灯和刹车灯控制电路毕业设计.docx(23页珍藏版)》请在冰豆网上搜索。
汽车尾灯和刹车灯控制电路毕业设计
汽车尾灯和刹车灯控制电路毕业设计
中文摘要…………………………………………………………………………………
英文摘要…………………………………………………………………………………
1.设计介绍及课题研究…………………………………………………………………1
1.1设计语言C语言的介绍…………………………………………………………1
1.2设计软件Proteus的介绍………………………………………………………1
1.3LED灯介绍………………………………………………………………………1
1.4设计要求…………………………………………………………………………1
1.5方案设计…………………………………………………………………………2
2.汽车尾灯和刹车灯控制电路硬件设计………………………………………………2
2.1硬件设计系统框架………………………………………………………………2
2.1.1单片机技术简介……………………………………………………………3
2.1.2系统主要芯片和元器件的介绍和应用……………………………………4
2.1.3系统原理图…………………………………………………………………8
2.1.4开关电路及最小系统………………………………………………………8
2.1.5LED显示电路………………………………………………………………9
2.2电源电路…………………………………………………………………………9
2.2.1基本原理……………………………………………………………………9
2.2.2采用LM317可调三端稳压电源…………………………………………10
2.2.3电源电路原理图……………………………………………………………10
3.程序编写………………………………………………………………………………11
3.1程序编写流程……………………………………………………………………11
3.2程序编写…………………………………………………………………………11
3.3设计功能调试效果………………………………………………………………15
4.总结……………………………………………………………………………………18
摘要
本论文介绍了一种简便运用单片机控制汽车尾灯的设计方法,控制电路设计以STC89C52单片机为核心,模拟汽车尾灯进行智能控制,用6个LED灯模拟汽车尾灯,5个独立按键分别对左转,右转,刹车,夜间行驶,出现故障五种情况进行有效控制。
这是一种芯片控制多个不同电路而实现所需功能的有效方式,该设计通过运用我们学过的单片机,c语言,模拟电路知识设计汽车尾灯现实控制电路。
在设计汽车尾灯控制器电路中,让我了解了LED驱动电路特性,并提出解决方案,综合运用了在课程中学习的51单片机知识,最终确定设计方案。
在实际汽车尾灯电路设计中,有许多方法设计汽车尾灯控制。
但以STC89C52单片机为核心的控制电路,以发光二极管LED为显示电路,以按键为操作控制电路简单,制作方便,性能可靠。
关键词:
STC89C52,LED灯,汽车尾灯,c语言。
Abstract
Thispaperintroducesasimpleuseofsingle-chipmicrocomputertocontrolthecartaillightdesignmethod,thedesignofcontrolcircuitwithSTC89C52singlechipasthecore,simulationofautomobiletaillightintelligentcontrol,simulationofautomobiletaillightwith6LEDlights,5independentbuttonstoturnleft,turnright,brake,drivingatnight,failureinfivecaseswereeffectivelycontrolled.Thisisaneffectivewaytocontrolmanydifferentcircuittorealizetherequiredfunction,thisdesignusingourlearnedClanguage,microcontroller,analogcircuitdesignknowledgetaillightrealitycontrolcircuit.Inthedesignofcartaillightcontrollercircuit,letmeunderstandthecharacteristicsofLEDdrivecircuit,andproposesolutions,comprehensiveuseofthelearninginthecourseof51singlechipcomputerknowledge,thefinaldesign.Intheactualcartaillightcircuitdesign,therearemanywaystodesignacartaillightcontrol.ButthecontrolcircuittakesSTC89C52microcontrollerasthecore,usingalightemittingdiodeLEDdisplaycircuit,buttonstooperatethecontrolcircuitissimple,convenient,reliableperformance.
Keywords:
STC89C52,LEDlamp,automobiletaillights,Clanguage
1设计介绍及课题研究
1.1设计语言C语言的介绍
C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。
它由美国贝尔实验室的DennisM.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。
它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。
1.2设计软件Proteus的介绍
Proteus是一款Labcenter出品的电路分析实物仿真系统。
可以仿真各种电路和IC,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片机仿真系统。
它可以仿真、分析各种模拟电路与集成电路,软件提供了大量的模拟与仿真元件及外部设备,各种虚拟仪器,特别是它具有对单片机及外围电路组成的综合系统的交互仿真功能。
Proteus是一个巨大的教学资源,可以用于:
模拟电路与数字电路的教学与实验;单片机与嵌入系统软件的教学与实验;微控制器系统的综合实验;创新实验与毕业设计;项目设计与产品开发。
1.3LED灯介绍
LED灯是一种新型环保光源,具有发光效率高,色纯度高,响应速度快,体积小,便于设计等特点,其使用寿命长,可靠性高,工作电流小,可与数字电路兼容等许多优点。
在应用汽车尾灯方面具有很重要的意义:
用作刹车灯,可以使司机更快做出反应,减少交通事故的发生;使用寿命长,避免汽车尾灯经常更换;体积小,大大缩小尾灯占用后车厢的体积等。
1.4设计要求
本设计主要是针对汽车尾灯的转向灯及刹车灯的控制信息进行设计,所用到的编程语言为C语言。
该语言编程容易实现复杂的市值计算;易于阅读和交流;易于调试与维护程序;容易实现模块开发;程序可移植性好。
本设计利用定时器定时闪烁,这样才能让汽车转向灯更准确的闪亮和熄灭。
所以选用c语言的优点实现了,并且用c语言编写程序时容易修改参数。
控制尾灯信息要求是:
(1)当汽车白天正常行驶时,指示灯全灭;
(2)汽车左转弯时,汽车左侧第一个指示灯亮;
(3)右转弯时,汽车右侧第一个指示灯亮;
(4)汽车刹车时,左右两侧第二个指示灯亮;当汽车出现故障时,汽车左右三个指示灯依次闪烁。
1.5方案设计
通过STC89C52单片机编写程序,来控制6个LED的亮灭。
这样可以大大简化系统结构,降低成本,提高先进性和可靠性,能实现控制器的系统编程。
采用这种器件开发的数字系统升级及改进极为方便,实现智能系统化,满足现代人们的需求。
2汽车尾灯和刹车灯控制电路硬件设计
2.1硬件设计系统框架
本设计以STC89C52单片机为核心,制作一款新型的LED汽车尾灯控制电路,并且5个独立按键实现汽车左转,右转,刹车,夜间行驶,故障等信号灯的功能。
该系统由USB供电,由开关电路,指示灯,振荡电路组成。
系统框架如下:
该系统主要实现汽车行驶状态中尾灯控制的状态并用6个LED灯代表汽车左转,右转,夜间行驶,刹车,故障5种情况。
而且还实现了白天和夜间两种模式,司机可以通过“夜间行驶’进行按键切换,系统共设计了5个独立键S1-S5,下图为按键功能介绍:
2.1.1单片机技术简介
单片微型计算机简称单片机,是典型的嵌入式微控制器(MicrocontrollerUnit),常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
单片机由运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。
概括的讲:
一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
它最早是被用在工业控制领域。
由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。
最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
INTEL的8080是最早按照这种思想设计出的处理器,当时的单片机都是8位或4位的。
其中最成功的是INTEL的8051,此后在8051上发展出了MCS51系列单片机系统。
因为简单可靠而性能不错获得了很大的好评。
尽管2000年以后ARM已经发展出了32位的主频超过300M的高端单片机,直到现在,基于8051的单片机还在广泛的使用。
在很多方面单片机比专用处理器更适合应用于嵌入式系统,因此它得到了广泛的应用。
事实上单片机是世界上数量最多处理器,随着单片机家族的发展壮大,单片机和专用处理器的发展便分道扬镳。
现代人类生活中所用的几乎每件有电子器件的产品中都会集成有单片机。
手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电子产品中都含有单片机。
汽车上一般配备40多片单片机,复杂的工业控制系统上甚至可能有数百片单片机在同时工作!
单片机的数量远远超过PC机和其他计算机的总和。
2.1.2系统主要芯片和元器件的介绍和应用
STC89C52简介:
STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
具有以下标准功能:
8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。
另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
最高运作频率35MHz,6T/12T可选。
特性:
STC89C52RC单片机:
8K字节程序存储空间;
512字节数据存储空间;
内带2K字节EEPROM存储空间;
可直接使用串口下载;
AT89S52单片机:
8K字节程序存储空间;
256字节数据存储空间;
自带2KB的EEPROM存储空间;
参数:
(1)增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051.
(2)工作电压:
5.5V~3.3V(5V单片机)/3.8V~2.0V(3V单片机)
(3)工作频率范围:
0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHz
(4)用户应用程序空间为8K字节
(5)片上集成512字节RAM
(6)通用I/O口(32个),复位后为:
P0/P1/P2/P3是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。
(7)ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片
(8).具有EEPROM功能
(9)共3个16位定时器/计数器。
即定时器T0、T1、T2
(10)外部中断4路,下降沿中断或低电平触发电路,PowerDown模式可由外部中断低电平触发中断方式唤醒
(11)通用异步串行口(UART),还可用定时器软件实现多个UART
(12)工作温度范围:
-40~+85℃(工业级)/0~75℃(商业级)
(13)PDIP封装
工作模式:
掉电模式:
典型功耗<0.1μA,可由外部中断唤醒,中断返回后,继续执行原程序
空闲模式:
典型功耗2mA
正常工作模式:
典型功耗4mA~7mA
掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备
STC89C52RC单片机引脚功能说明:
VCC(40引脚):
电源电压 VSS(20引脚):
接地
P0端口(P0.0~P0.7,39~32引脚):
P0口是一个漏极开路的8位双向I/O口。
作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。
在访问外部程序和数据存储器时,P0口也可以提供低8位地址和8位数据的复用总线。
此时,P0口内部上拉电阻有效。
在FlashROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。
验证时,要求外接上拉电阻。
P1端口(P1.0~P1.7,1~8引脚):
P1口是一个带内部上拉电阻的8位双向I/O口。
P1的输出缓冲器可驱动(吸收或者输出电流方式)4个TTL输入。
对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。
P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流。
此外,P1.0和P1.1还可以作为定时器/计数器2的外部技术输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。
P2端口(P2.0~P2.7,21~28引脚):
P2口是一个带内部上拉电阻的8位双向I/O端口。
P2的输出缓冲器可以驱动(吸收或输出电流方式)4个TTL输入。
对端口写入1时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。
P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。
在访问外部程序存储器和16位地址的外部数据存储器(如执行“MOVX @DPTR”指令)时,P2送出高8位地址。
在访问8位地址的外部数据存储器(如执行“MOVX @R1”指令)时,P2口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容),在整个访问期间不会改变。
在对Flash ROM编程和程序校验期间,P2也接收高位地址和一些控制信号。
P3端口(P3.0~P3.7,10~17引脚):
P3是一个带内部上拉电阻的8位双向I/O端口。
P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。
P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流,在对Flash ROM编程或程序校验时,P3还接收一些控制信号。
P3端口(P3.0~P3.7,10~17引脚):
P3是一个带内部上拉电阻的8位双向I/O端口。
P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。
对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。
P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流。
在对Flash ROM编程或程序校验时,P3还接收一些控制信号。
RST(9引脚):
复位输入。
当输入连续两个机器周期以上高电平时为有效,用来完成单片机单片机的复位初始化操作。
看门狗计时完成后,RST引脚输出96个晶振周期的高电平。
特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。
DISRTO默认状态下,复位高电平有效。
ALE/(30引脚):
地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。
在Flash编程时,此引脚()也用作编程输入脉冲。
在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。
然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。
如果需要,通过将地址位8EH的SFR的第0位置“1”,ALE操作将无效。
这一位置“1”,ALE仅在执行MOVX或MOV指令时有效。
否则,ALE将被微弱拉高。
这个ALE使能标志位(地址位8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。
(29引脚):
外部程序存储器选通信号()是外部程序存储器选通信号。
当AT89C51RC从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而访问外部数据存储器时,将不被激活。
/VPP(31引脚):
访问外部程序存储器控制信号。
为使能从0000H到FFFFH的外部程序存储器读取指令,必须接GND。
注意加密方式1时,将内部锁定位RESET。
为了执行内部程序指令,应该接VCC。
在Flash编程期间,也接收12伏VPP电压。
XTAL1(19引脚):
振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2(18引脚):
振荡器反相放大器的输入端。
STC89C52引脚图
2.1.3系统原理图
2.1.4开关电路及最小系统
2.1.5LED显示电路
2.2电源电路
2.2.1基本原理
直流稳压电源是一种将220v的交流电转换成稳压输出的直流电装置,它需要变压,整流,滤波,稳压四个步骤才可以完成,如下图所示:
其中,电源变压器的作用是将220v交流电压变换成滤波电路所需要的交流电压;整流电路的作用是利用单向导电原件将正弦交流电变换成脉动的直流电;滤波电路的作用是将整流电路输出电压中的交流成分滤除,此处使用的是桥式整流滤波;稳压电路的作用是利用两端电压变化会引起其电流较大变化的特点来工作的,通过调节稳压管的电压可以稳定电压输出。
2.2.2采用LM317可调三端稳压电源
LM317的输出电压范围是1.2V至37V,负载电流最大为1.5A。
它的使用非常简单,仅需两个外接电阻来设置输出电压。
LM317内置有过载保护,安全区保护等多种保护电路,通常不需外接电容,决定LM317输出电压的是内部电阻和一个可变电位器(RP)组成电压输出调节电路,比值为Vo=1.25(1+RP/R)。
LM317其特性参数:
可调范围为1.25V-7V 最大输出点流为1.5A
输入与输出工作压差为△U= Ui-Uo:
3V-40V 输出表达式为:
UO=(1+R1/R2)*UREF
其中, UREF是集成稳压器件的输出电压,为1.25V。
2.2.3电源电路原理图
3程序编写
3.1程序编写流程
3.2程序编写
#include
sbitleft=P2^7;
sbitright=P2^2;
sbitnight1=P2^5;
sbitnight2=P2^4;
sbitstop1=P2^6;
sbitstop2=P2^3;
sbitkeyl=P3^3;
sbitkeyr=P3^4;
sbitkeys=P3^5;
sbitkeyn=P3^6;
sbitkeyw=P3^7;
unsignedcharfangxiang=0,deng=0,guzhang=0,time=0,temp=2;
voiddelayms(unsignedintx)
{
unsignedchara=160;
while(x--)
{
while(a--);
a=160;
}
}
voidmain()
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TMOD=1;
ET0=1;
EA=1;
TR0=0;
while
(1)
{
if(guzhang)
{
}
else
{
if(fangxiang==1)
{
left=0;
right=1;
}
elseif(fangxiang==2)
{
left=1;
right=0;
}
else
left=right=1;
stop1=keys;
stop2=keys;
night1=!
deng;
night2=!
deng;
}
if(!
keyl)
{
if(fangxiang==0)
fangxiang=1;
else
fangxiang=0;
delayms(100);
}
if(!
keyr)
{
if(fangxiang==0)
fangxiang=2;
else
fangxiang=0;
delayms(100);
}
if(!
keyn)
{
deng=!
deng;
delayms(100);
}
if(!
keyw)
{
if(guzhang)
{
TR0=0;
guzhang=0;
}
else
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
time=0