基于AT89S52单片机的汽车尾灯控制器设计
出处:fobyellow 发布于:2011-11-03 15:47:48
摘要:为了减少交通事故隐患和提高汽车、摩托车等机动车辆尾灯电路的使用寿命,本文设计了一种利用AT89S52单片机对汽车尾灯工作状态进行控制的控制器系统。首先介绍了系统的总体设计方案;其次结合实际应用给出了界面模式与主控芯片单片机的外围电路;为了实现系统的控制功能,采用C语言编程,文中详细介绍了软件设计流程图及实现方法;,将软件系统与硬件电路结合调试,实现了左转、右转、刹车及夜间行车四种常用的汽车尾灯状态。
0 引言
随着现代社会的不断进步,人们愈来愈离不开汽车。然而,随着汽车数量的急剧增加,道路安全就愈发引起人们的关注。现在认识到,仅仅依靠汽车本身的结构因素保证行车安全,已经是不现实的事情,因而必须强化对车辆上涉及安全的主要部位,进行定期的检查,并按一定的技术标准对它们的技术状况加以考核,通过具有一定的各种检验台测试取得的数据,科学而又定量地判断车辆安全装置的技术状况,给出恰当的评价。而汽车车灯故障率在汽车行驶过程中是比较高的,车灯故障时,不能正确反应汽车驾驶员的行车意识而给安全行车埋下事故隐患。
而随着电子系统能够在汽车产品中的广泛应用,大大保证了控制系统的自动化,而且汽车造型日趋流线型,汽车尾灯对于汽车整体造型的完美体现有着很大作用,汽车尾灯控制系统在汽车成品中所占的比重也逐渐加大。
尾灯又是汽车品牌的体现,不同的尾灯的形状、在车上的安装位置、不同信号功能的相对位置等都是使汽车独树一帜的有效手段。同时,对汽车整体而言,尾灯安装后,与车身必须能浑然一体,并且在点亮与未点亮时都具有整体的协调性。国内汽车尾灯控制技术方面的产品主要是动态式图文显示的汽车尾灯口。
本文所研究和开发的课题是汽车尾灯控制器的电路设计,其基于Intel公司生产的AT89S52芯片设计了汽车尾灯控制系统。在该系统中,通过8个LED显示汽车尾灯的基本工作状况,汽车尾灯控制系统的研发不仅使汽车的先进性有了较大提高,更重要的是降低了交通事故发生的可能性。
1 AT89S52芯片简介
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8 K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52具有以下标准功能:8K字节Flash,256字节RAM,32位I/0口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0 Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
2 硬件设计及工作原理
该系统硬件主要包括以下三大模块:逻辑开关控制器、AT89S52单片机系统、LED灯阵等组成,从而形成了信号识别电路、控制器以及发光电路三个模块。其中单片机系统(微控制器)作为中央处理单元,根据逻辑开关控制器检测到驾驶员所执行开关控制信号,获得的相应信号进行传输使单片机系统收到指令,进而使LED灯阵发出相应的指示。系统总体设计方案如图1所示。
图1系统总体设计
其中:
1)逻辑开关控制器由五个开关组成,分别是左转、右转、检查、夜间行驶、复位等。
2)单片机系统是40个引脚的AT89S52芯片,其中所用到的引脚有19个。
3)灯阵自左向右分别为L4L3L2L1R1R2R3R4,其中灯阵R1R2R3代表右侧3个指示灯,L1L2L3代表左侧的3个指示灯,R4L4代表夜间行驶时长亮灯。
本次设计的汽车尾灯控系统中的控制功能包括左转、右转、刹车检查、夜间行驶等,主要为了模拟实际汽车尾灯控制电路,进而达到可靠性高、实用性好和普遍性强等特点,所研究方案的硬件电路简单,可以广泛应用在各种机动车辆上。系统电路图如图2所示。
图2系统电路
该系统的工作原理是:左转开关触发后,单片机收到信号并进行处理,此时L1L2L3按左循环依次点亮;同样当右转开关触发时,R1R2R3按右循环依次点亮;当检查开关触发时,L3L2L1R1R2R3同时闪烁;当复位开关触发后,左转、右转和检查等状态都清零,即L3L2L1R1R2R3均不工作;当夜间行驶开关闭合后,R4L4长亮,同时其余四种态也可以进行。(注:D1D2D3D7分别为L1L2L3L4,D4D5D6D8分别为R1R2R3Rt4)。
3 软件设计
分析上述图1尾灯控制系统的工作原理后,本设计的软件主要由主程序、键盘扫描子程序、延时子程序等模块组成,并采用C51语言编写。
从图2可知,单片机采用AT89S52,其引脚P1口中P1.O~P1.2口和P1.5~P1.7口以及P2 口中P2.0口和P2.1口做LED发光输出控制用,P3.0~P3.4口为闪烁方式控制开关,限流电阻220,发光二极管电流约为10 mA,采用12 MHz晶振。
3.1主程序
主程序主要完成硬件初始化、子程序调用以及LED显示功能,主程序流程图如图3所示。
图3主程序流程
3.2键盘子程序
该部分主要实现参数的输入。包括键盘的扫描子程序和引脚的参数设置以及键盘去抖动子程序三部分。工作方式为,首先判断P3.4口按键状态,然后通过扫描P3.O~P3.3口,判断是否有按键按下,然后在20H内存单元的低4位的对应位置1标志,确定应执行的闪烁功能。当20H.0为1时,发光管按左循环点亮;当20H.1为I时,发光管按右循环点亮;当20H.2为1时,发光管同时闪烁;当20H.3为1时,P1口发光管停止工作,并扫描P3.O~P3.2口。上电初始化时,对20H.3位置设1,电路此时不工作,系统将进入扫描按键状态。
3.3延时子程序
该部分主要实现LED闪烁的时长。延时子程序有10 ms和l s两个,用作键扫描消抖及发光管闪烁延时。
3.4闪烁控制程序。
闪烁控制程序用来控制P1口中P1.0~P1.2口和P1.5~P1.7口,以及P2口中P2.0口和P2.1口的发光管发光变化方式。其中:
①执行功能程序0(FUN0)时的P1口中P1.O~P1.2口输出值变化为100→延时→110→延时→111→延时→00O延时→结束转主程序。
②执行功能程序I(FUNl)时的P1口中P1.5~P1.7口输出值变化为001→延时→011→延时→111→延时→000→延时→结束转主程序。
③执行功能程序2(FUN2)时的P1口中P1.O~P1.2口和P1.5~P1.7口输出值变化为111111→延时→000000→结束转主程序。
3.5系统部分程序
本系统中采用C51语言编程来实现上述控制功能,按键程序和闪烁部分程序设计如下:
4结束语
本文设计的汽车尾灯控制系统,可以减少交通事故隐患和提高尾灯电路的使用寿命。系统设计方法通过实验仿真和调试证明了可行性。将软件系统与硬件电路结合调试,实现了左转、右转、刹车及夜间行驶四种常用的汽车尾灯状态。该尾灯控制系统结构简单,可靠性高,操作方便,成本低,可广泛应用于常用机动
参考文献:
[1]. AT89S52 datasheet https://www.dzsc.com/datasheet/AT89S52_970343.html.
[2]. 80C51 datasheet https://www.dzsc.com/datasheet/80C51_103447.html.
下一篇:汽车灯具道路照明仿真显示
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- LED 手电筒控制器/驱动器参考设计2023/9/13 16:18:33
- 在 LED 照明和 LCD 背光设计中实现最高效率2023/7/17 15:35:18
- ADALM2000实验:LED作为光传感器2023/5/24 16:33:23
- 如何使用 LED 作为光传感器2023/1/31 15:53:50
- 灯光和 LED自动双输出显示2023/1/11 17:24:36
- 英特尔数据存储如何操作和实现
- 什么是微动开关_微动开关有什么用_微动开关使用方法
- VCC,VDD,VEE,VSS在电源原理图中有什么区别?
- 低压配电系统设计规范_低压配电系统设计注意事项
- xEV 主逆变器电源模块中第四代 SiC MOSFET 的短路测试
- 光耦详细应用教程
- 定义绝缘耐久性评估的电压脉冲测试要求
- 采用沟槽MOS结构,使存在权衡关系的VF和IR相比以往产品得到显著改善 ROHM推出实现业界超快trr的100V耐压SBD“YQ系列”
- NOVOSENSE - 纳芯微推出车规级温湿度传感器NSHT30-Q1,助力汽车智能化发展
- Keysight - EV 电池设计创新:扩大续航里程、延长电池寿命