汽车尾灯控制器设计word精品
(完整word版)51单片机课程设计汽车尾灯控制
华中师范大学武汉传媒学院传媒技术学院电子信息工程2011仅发布百度文库,版权所有.汽车尾灯控制要求:A.使用单片机实现汽车尾灯控制的设计B。
当按不同的按键时,显示不同的转向,并可以显示停止一设计框图:二方案设计:模拟汽车尾灯的设计,硬件制作比较简单,用LED灯就可以很好的模拟汽车尾灯。
而信号的输入也可以用简单的案件来处理。
但汽车在行驶时,灯的处理的实时性急稳定性很重要,如果出现误操作,就很容易出现交通事故。
所以本次设计的重点是在编写程序上,想要出现满意的效果必须要对C编程熟悉,并对按键的输入的实时性以及更重要的稳定性有着高的要求。
三硬件原图设计:1最小系统:2按键部分:3尾灯和仪表部分:四程序流程图:初始化按键扫描LED灯控制退中断五仿真图:六制作:调试:程序设定在中断函数里扫描按键,再通过标志位来改变灯的状态.在实际里按键后灯会有一直亮的情况,再改变扫描的时间,以及改变防抖动处理的时间都得不到理想的状态。
最后发现是中断计数时间过短导致在处理按键时函数已经在中断里按键无法改变标志位,导致灯常亮的情况.通过延长了进入中断时间,这个情况就完全解决了没有再出现常亮情况。
心得体会:通过这次课程设计,是我对C语言处理实际问题的能力。
输入输出通过哟个好的程序框架才能很好的协作。
这也是C语言在处理硬件的好处.也让我对单片机中断的理解,对程序的整体设计方面的学习正是我欠缺的地方。
通过这次让我很好的锻炼了自己.这次课程设计也让我懂得了团队合作的实际意义。
特别是在程序出现了大问题,起初无法解决的,我们一起讨论一起查质料一起学习.最后终于解决的了的喜悦真的很爽.七原程序:#include 〈REG52。
H>#include 〈intrins.h〉unsigned char const discode[] ={0x30,0x06,0x00,0x73};#define const_key_time1 20 //按键去抖动延时的时间#define const_key_time2 20 //按键去抖动延时的时间#define const_key_time3 20 //按键去抖动延时的时间#define const_key_time4 20 //按键去抖动延时的时间#define const_key_time5 20 //按键去抖动延时的时间#define const_display_time1 60 //闪烁#define const_display_time2 120void initial_myself();void initial_peripheral();//void delay_short(unsigned int uiDelayShort);void delay_long(unsigned int uiDelaylong);void T0_time(); //定时中断函数void key_service();//按键服务的应用程序void key_scan();//按键扫描函数放在定时中断里sbit key_sr1=P2^0; //左转键sbit key_sr2=P2^2;//右转键sbit key_sr3=P2^1; //转向归位键sbit key_sr4=P2^3; //停车键sbit left=P2^6;sbit right=P2^5;unsigned char ucKeySec=0; //被触发的按键编号unsigned int uiKeyTimeCnt1=0;//按键去抖动延时计数器unsigned char ucKeyLock1=0;//按键触发后自锁的变量标志unsigned int uiKeyTimeCnt2=0;//按键去抖动延时计数器unsigned char ucKeyLock2=0;//按键触发后自锁的变量标志unsigned int uiKeyTimeCnt3=0;//按键去抖动延时计数器unsigned char ucKeyLock3=0;//按键触发后自锁的变量标志unsigned int uiKeyTimeCnt4=0;//按键去抖动延时计数器unsigned char ucKeyLock4=0; //按键触发后自锁的变量标志unsigned int uiLedTimeCnt1=0; //闪烁计数器unsigned int uiLedTimeCnt2=0;unsigned int uiLedTimeCnt4=0;uidisplayTimeCnt1=0; // 闪烁延时计数器/*//根据原理图得出的共阴数码管字模表code unsigned char dig_table[]={0x3f,//0 序号00x06,//1 序号1 0x5b, //2 序号20x4f,//3 序号30x66,//4 序号4 0x6d, //5 序号50x7d, //6 序号60x07,//7 序号7 0x7f,//8 序号80x6f, //9 序号90x00, //无序号100x40,//—序号11 0x73,//P 序号12};*/void main(){initial_myself();delay_long(100);initial_peripheral();while(1){key_service(); //按键服务的应用程序}}void key_scan()//按键扫描函数放在定时中断里{if(key_sr1==1)//IO是高电平,说明按键没有被按下,这时要及时清零一些标志位{ucKeyLock1=0; //按键自锁标志清零uiKeyTimeCnt1=0;//按键去抖动延时计数器清零}else if(ucKeyLock1==0)//有按键按下,且是第一次被按下uiKeyTimeCnt1++;//累加定时中断次数if(uiKeyTimeCnt1>const_key_time1){uiKeyTimeCnt1=0;ucKeyLock1=1; //自锁按键置位,避免一直触发ucKeySec=1; //触发1号键}}if(key_sr2==1)//IO是高电平,说明按键没有被按下,这时要及时清零一些标志位{ucKeyLock2=0; //按键自锁标志清零uiKeyTimeCnt2=0;//按键去抖动延时计数器清?}else if(ucKeyLock2==0)//有按键按下,且是第一次被按下{uiKeyTimeCnt2++; //累加定时中断次数if(uiKeyTimeCnt2〉const_key_time2)uiKeyTimeCnt2=0;ucKeyLock2=1; //自锁按键置位,避免一直触发ucKeySec=2;//触发2号键}}if(key_sr3==1)//IO是高电平,说明按键没有被按下,这时要及时清零一些标志位{ucKeyLock3=0; //按键自锁标志清零//uiKeyTimeCnt3=0;//按键去抖动延时计数器清?}else if(ucKeyLock3==0)//有按键按下,且是第一次被按下{uiKeyTimeCnt3++; //累加定时中断次数if(uiKeyTimeCnt3>const_key_time3){uiKeyTimeCnt3=0;ucKeyLock3=1;//自锁按键置位,避免一直触发ucKeySec=3; //触发3号键P1=discode[2];left=0;right=0;}}if(key_sr4==1)//IO是高电平,说明按键没有被按下,这时要及时清零一些标志位{ucKeyLock4=0; //按键自锁标志清零uiKeyTimeCnt4=0;//按键去抖动延时计数器清?}else if(ucKeyLock4==0)//有按键按下,且是第一次被按下{uiKeyTimeCnt4++; //累加定时中断次数if(uiKeyTimeCnt4>const_key_time4){uiKeyTimeCnt4=0;ucKeyLock4=1; //自锁按键置位,避免一直触发ucKeySec=4;//触发4号键}}}void key_service()//按键服务的应用程序{switch(ucKeySec) //按键服务状态切换{case 1:// 左转按键while(ucKeySec==1){//uiLedTimeCnt1=0;if(uiLedTimeCnt1〉const_display_time1){P1=discode[0];left=1;if(uiLedTimeCnt1〉const_display_time2)uiLedTimeCnt1=0;}else{P1=0x00;left=0;}}//ucKeySec=0;//响应按键服务处理程序后,按键编号清零,避免一致触发break;case 2:// 右转按键while(ucKeySec==2){//uiLedTimeCnt2=0;if(uiLedTimeCnt2>const_display_time1){P1=discode[1];right=1;if(uiLedTimeCnt2>const_display_time2)uiLedTimeCnt2=0;}else{P1=0x00;right=0;}}//ucKeySec=0;//响应按键服务处理程序后,按键编号清零,避免一致触发break;case 4:while(ucKeySec==4)//停车按键{//uiLedTimeCnt4=0;if(uiLedTimeCnt4>const_display_time1){P1=discode[3];right=1;left=1;if(uiLedTimeCnt4>const_display_time2)uiLedTimeCnt4=0;}else{right=0;left=0;}}// ucKeySec=0;//响应按键服务处理程序后,按键编号清零,避免一致触发break;}}void T0_time() interrupt 1{TF0=0; //清除中断标志TR0=0; //关中断key_scan();//按键扫描函数//key_service();//按键服务的应用程序uiLedTimeCnt1++;//闪烁计数uiLedTimeCnt2++;uiLedTimeCnt4++;TH0=0xf8; //重装初始值(65535-500)=65035=0xfe0bTL0=0x30;TR0=1;//开中断}void delay_long(unsigned int uiDelayLong){unsigned int i;unsigned int j;for(i=0;i〈uiDelayLong;i++){for(j=0;j〈500;j++) //内嵌循环的空指令数量{;//一个分号相当于执行一条空语句}}}void initial_myself() //第一区初始化单片机{P2=0xff;P1=0x00;TMOD=0x01;//设置定时器0为工作方式1TH0=0xf8;//重装初始值(65535-500)=65035=0xfe0b TL0=0x30;}void initial_peripheral() //第二区初始化外围{left=0;right=0;EA=1; //开总中断ET0=1;//允许定时中断TR0=1;//启动定时中断}。
基于Multisim的汽车尾灯控制设计精选全文
可编辑修改精选全文完整版一、设计任务汽车尾灯控制电路的设计,要求实现汽车左转弯、右转弯、停止等条件下尾灯的点亮与熄灭情况。
二、设计条件本课题设计基于强大的数字电路板仿真软件Multisim,该软件具有电脑模拟各种电路功能,其运用各种仿真器件可达到现实器件同样的功能效果。
三、设计要求假设汽车尾部左右两侧各有三个指示灯(用发光二极管模拟)1、汽车正常运行时指示灯全灭;2、左转弯时左侧3个指示灯按左循环顺序点亮;3、右转弯时右侧3个指示灯按右循环顺序点亮;4、临时刹车时,所有指示灯同时闪烁。
四、设计内容设计内容包括运用主从JK触发器构成一个3进制计数器,为汽车尾灯按左(右)循环闪烁控制电路的设计提供脉冲;并使用74LS138D3线-8线译码器来控制指示灯的亮灭情况。
设计一个开关控制电路,来控制尾灯的闪烁,并决定74LS138D译码器的工作情况。
1.设计思想:开关控制电路译码电路驱动电路A B三进制计数电路图1 汽车尾灯控制框图图一为汽车尾灯控制电路方框图,其中比较复杂的是三进制计数电路和译码电路。
开关控制电路由2个开关控制,通过控制对译码电路提供的信号来控制驱动电路;三进制计数器电路由2个主从JK触发器构成,通过主从JK触发器的特性构成时序逻辑电路来实现三进制计数;译码电路采用74LS138D译码器,使用3线8线译码器可以控制8个端口的输出,而本实验只需要使用6个端口,其余两个端口闲置。
通过三进制计数器和开关控制电路来控制译码器6个端口的逻辑状态;驱动电路采用常用的LED管,采用共阳极形式,LED管的正极接+5V电压,负极通过驱动电路来控制LED的亮灭情况。
2.电路结构与原理图(1)开关控制电路:如图2图2 开关控制电路开关两端一端接高电平,一端接地(低电平)。
74LS86D与74LS138的输入控制端连接,当开关同时闭合或断开的时候,输入相同,74LS86输出为“0”,则74LS138不译码。
若两开关同时断开,则74LS04D的输出为“1”;而74LS10D接有CP脉冲,所以此时74LS00D 的输出完全决定于CP脉冲;当两开关同时闭合,74LS00D输出为“1”;B开关打开;B开关闭合,A开关打开时的分析也按照上面的方法来分析实现。
汽车尾灯控制器设计
汽车尾灯控制器设计(一)设计要求假设汽车尾部左右两侧各有4个指示灯(用发光二极管模拟)有四种显示模式如下:1.汽车正常运行时指示灯全灭;2.右转弯时,右侧4个指示灯按右循环顺序点亮,每只灯只亮0.5秒;3.左转弯时,左侧4个指示灯按左循环顺序点亮,每只灯只亮0.5秒;4.临时刹车时左右两侧所有指示灯同时闪烁。
(二)汽车尾灯控制电路设计原理(1) 列出尾灯与汽车运行状态表(见表1-1)汽车尾灯和汽车运行状态关系表(1-1)开关控制行驶状态左尾灯右尾灯S 1 S0 L1 L2 L3 L4 R1 R2 R3 R40 0 向前灯灭灯灭0 1 右转弯灯灭按R1 R2 R3 R4顺序循环点亮1 0 左转弯按L1 L2 L3 L4顺序循环点亮灯灭1 1 刹车所有的尾灯随时钟CP同时闪烁(2) 设计总体框图由于汽车左右转弯时,四个指示灯循环点亮,所以用四进制计数器控制译码器电路顺序输出低电平,从而控制尾灯按要求点亮。
由此得出在每种运行状态下,各指示灯与各给定条件(S1、S0、CP、QA、QB)的关系,即逻辑功能表如下表(1-2)所示(表中0表示灯灭状态,1表示灯亮状态)。
汽车尾灯控制逻辑功能表(1-2)由尾灯控制逻辑功能表得出总体框图,如下图(2-1)所示。
汽车尾灯控制电路原理框图(2-1)设计如下:一、设计思路:其中CLR是异步清零端,LOAD是预置端,A、B、C、D是预置数据输入端,ENP和ENT是计数使能端,RCO是进位输出端,CLK为时钟控制端。
74LS160 的计数是同步的,靠CP 同时加在四个触发器上而实现的。
当ENP、ENT 均为高电平时,在CP 上升沿作用下Q0-Q3 同时变化。
清零端是异步的。
当清除端CLR 为低电平时,不管时钟端CP 状态如何,即可完成清除功能。
1、用两片74ls113JK触发器实现四进制。
2、开关控制电路由芯片74ls139充当,输入信号为S1、S2,输出信号Y1,Y2异或后控制译码电路,Y3与CP脉冲进行或运算后与译码电路输出信号进行与非运算控制尾灯;3、译码电路由一片74ls138充当,输入信号为S1和计数器的两输出信号,输出信号与控制电路共同决定尾灯开关。
实验二十七汽车尾灯控制实验精选全文
可编辑修改精选全文完整版
实验二十七汽车尾灯控制实验(研究型)
一、实验目的
1、运用数字逻辑电路的基础知识设计实用逻辑电路。
2、提高学习兴趣
二、实验设备及器件
1、万用表 1块
3、器件自选
三、实验内容及步骤
1、设汽车左右各三个尾灯,利用两个开关模拟汽车左右拐弯,当两个开关为11时,汽车后面6个尾灯全亮;当两开关为10时,汽车左拐,左边三个尾灯依次从右往左循环亮;而当两开关为01时,表示汽车右拐,则右边三个尾灯依次从左往右循环亮;开关为00汽车后面6个尾灯全暗。
原理线路如图27-1所示
图 27-1
2、选器件,画实验连线图(学生来完成)。
3、调试(学生来完成)。
四、实验要求
1、独立组装调试,通过老师当场验收。
2、交出完整的实验报告。
汽车尾灯控制器设计
二.课程设计体会 一周的课程设计很快就结束了,总的说来收获不小,不能说设计的过程中是一帆风顺的,开始时是设计阶段也没太在意,后来到动手 的时候觉得遇见了好多没想到的问题,平时在书本上划的很熟练的一些电路,当拿到Multisim12.0上进行仿真时就回错误百出。开始 时让我极为的伤头,在课程设计的第二天我专门的对Multisim12.0软件进行了操练,当我熟悉了之后用起来就比较得心应手了。也发 现用计算机软件进行设计的好处,使产品的设计成本大大的降低。我想这也是最吸引我们的地方,当真正的进行产品大规模生产时利 润是相当大的。当我投入设计时才发现乐在其中,这次实验是我们对书本中学到的各个部分原理的一次综合的运用,在书本中我们看 那些原理有老师的讲解我们理解起来并不一定十分的困难,但是当我们将那些知识综合运用的电路的设计中确实有了很多意想不到的 困难。实践出真知,通过这次电路的设计让我学到了书本中没有的很多东西,我想最主要的就是一种综合能力的提升。我认为这样的 电路设计很有现实意义,这样的教学方法对于提升同学们的综合运用能力也是行之有效的,是非常值得推广的。如果在讲课过程中能 够运用部分内容穿插一些小设计,或者让同学们自己回去设计一些小电路,并且通过老师的指导演示出来,我想不仅能调动同学的学 习积极性,而且还能培养出同学们的创新设计能力。比如这次设计,如果能够让同学们能够演示出来就更好了。如果老师讲课时能够 将各种难题能够用软件模拟可以让我们更好的理解。 课程设计是一个增长知识的课堂,在此过程当中不断的认识自己,了解自己,提高自己,无论是在学习和生活中都要有所收获,真 正的做到整个实验过场对自己整个人生都有所影响,有所回报,这样才能使整个过程更加的有意义,也使自己的人生更加的充实。在 此实验当中,在克服重重困难的同时也使我看到了电子学习的乐趣,为以后的学习工作打下了坚实的基础,为以后的工作与学习赢得 了必要的信心与决心。 总的说来,这次课程设计还是比较顺利的。只是在测试阶段遇到一点问题,其他阶段还是完全符合预定计划的,并没有因为什么问 题而耽误实验进程。 这次课程设计,虽然短暂。但却是我们第一次的自主合作的设计电路。以前书本上的内容第一次完完全全的在实际中实现。在设计过 程中,遇到了书本中不曾学到的情况。
汽车尾灯控制电路设计 (3)精选全文
可编辑修改精选全文完整版电子设计自动化大作业题目汽车尾灯控制电路设计学院泉城学院班级电气工程及其自动化 3班姓名李栋学号 ***********二O一0年六月二十日题目:汽车尾灯控制电路设计一、设计要求:汽车尾部左右两侧各有3个指示灯(用发光管模拟),要求是:1. 汽车正常行驶时,尾灯全部熄灭。
2. 当汽车右转弯时,右侧3个指示灯按右循顺序点亮。
3. 当汽车左转弯时,左侧3个指示灯按左循顺序点亮。
4. 临时刹车时,所有指示灯随着cP时钟脉冲同步闪烁。
二、设计思路1 汽车尾灯显示状态与汽车运行状态的关系为了区分汽车尾灯的4种不同的显示模式,需设置2个状态控制变量。
假定用开关K1和K0进行显示模式控制,可列出汽车尾灯显示状态与汽车运行状态的关系,如表1.1所示。
表1.1汽车尾灯和汽车运行状态2汽车尾灯控制器功能描述在汽车左右转弯行驶时由于3个指示灯被循环顺序点亮,所以可用一个三进制计数器的状态控制译码器电路顺序输出高电平,按要求顺序点亮3个指示灯。
设三进制计数器的状态用Q1和Q0表示,可得出描述指示灯D1、D2、D3、D4、D5、D6与开关控制变量K1、K0,计数器的状态Q1、Q0以及时钟脉冲CP之间关系的功能表如表2.2所示(表中指示灯的状态“1”表示点亮,“0”表示熄灭)。
表2.2汽车尾灯控制器功能表控制变量计数器状态汽车尾灯K1 K0 Q1 Q0 D1 D2 D3 D4 D5 D60 0 d d 0 0 0 0 0 00 1 0110 0 10 1 01 0 00 0 00 0 00 0 01 0 0110 0 00 0 00 0 01 0 00 1 00 0 11 1 d d cp cp cp cp cp cp根据以上设计分析与功能描述,可以得出汽车尾灯控制器的结构框图,如下图所示。
根据以上设计分析与功能描述,可得出汽车尾灯控制器的结构框图。
整个电路可由秒脉冲电路、开关控制电路、三进制电路、译码与显示驱动电路、尾灯状态显示5部分组成。
汽车尾灯控制电路设计与实现-毕业论文
---文档均为word文档,下载后可直接编辑使用亦可打印--- 摘要这个设计按照传统的模块设计思路进行,先搜集查阅相关文献资料,对总体设计框图预先构思;再按总体设计框图,将整体模块拆分为多个小模块,并对各小模块进行逐一完成,最后,按总体设计框图,将各小模块组合起来,即构成整个设计模块。
按照上述思路,汽车尾灯的设计先进行电路单元模块设计,该整体模块由以下几个小模块构成:开关控制译模块、脉冲产生模块、三进制改造模块、译码输出模块、模式控制模块、译码与显示驱动电路设计模块等;其次,是本设计最主要的部分:将汽车行驶状态信号转化为数字信号,再将数字信号转化为光信号,显示在显示屏上。
然后是仿真,使用Protues对电路单元各个小模块进行模拟,根据仿真结果进一步分析修正模块设计,待各小模块验证无误后,按原理图搭建各单元电路,待整体电路搭建完成后,进行整体电路的仿真与修正,最后在实验板上对整体设计进行检验。
关键词:汽车尾灯;模块设计;仿真AbstractThe module design ideas for the design according to the traditional, to collect the data, literature review on the diagram of the overall design idea in advance; Again according to the overall design diagram, the module of the whole split into multiple small module, and one by one for each small modules to complete, in the end, according to the overall design diagram, each small module together, shall constitute the entire design module.According to the above ideas, the design of the car tail lights to circuit unit module design, the overall module consists of several small modules: switch control module, pulse generating module, ternary transformation module, decoding output module, mode control module, decoding module and display driver circuit design, etc.; Next, it is the most important part of the design: will the car status signal into digital signal, then converts digital signals into optical signals, displayed on the screen. Then the simulation, using Protues for simulating circuit unit each small module, and according to the simulation results are further analyzed correction module design, after waiting for validation and correct the small modules, arranged each unit circuit schematic diagram, stay after completing the whole circuit, the whole circuit simulation and correction, finally on plate experiment to test the overall design.Keywords: car taillight; Module design; The simulation(/translate" \o ")目录TOC \o "1-3" \h \u 第1章概述1第2章汽车尾灯发展的现状及趋势22.1 汽车尾灯的基本介绍 22.2汽车尾灯发展的现状及趋势32.3研究本课题的目的及意义 3第3章方案论证及设计原理 43.1 方案的确定与论证 43.2 设计原理 53.2.1 汽车尾灯显示状态与汽车运行状态关系53.3汽车尾灯控制器功能描述 5第4章电路单元模块设计84.1 开关控制译模块84.2 脉冲产生模块 104.3 三进制改造模块134.4 译码输出模块 154.5 模式控制模块 174.6 译码与显示驱动模块19第五章仿真205.1 电路的仿真205.2 电路的分析22第6章结果分析22第7章结束语23参考文献25第1章概述本设计旨在完成一个能够准确传输汽车在行驶、左转、右转和急刹车等不同状态下信息等灵活性好、安全性高的汽车尾灯控制器的设计。
汽车LED尾灯控制器的设计
汽车LED尾灯控制器的设计*名:**学号:***********年级:三班级: 1专业:通信工程指导老师:***基于51单片机对汽车LED尾灯控制器的设计摘要本次论文主要利用AT89S52单片机模拟汽车尾灯进行智能控制的控制器,用8个LED灯模拟汽车尾灯,6个独立按键分别对应了右转、左转、危险警示、夜间模式切换、检查信号、刹车不同的状态,在实际设计模拟电路中,我加入了74HC595芯片,减少了使用51单片机的I/0口的使用,在复杂的电路中,这是一种很好的方式实现一种芯片控制多个不同电路的优点。
在实际设计模拟汽车尾灯控制电路中,了解了LED驱动电路特性,提出相应解决方案,进行可靠性的设计。
在这次设计模拟汽车尾灯控制电路,能很好的综合运用我们在课程中学习到的51单片机的功能与运用,还有C语言编程,模拟电子电路基础,以及数字电路基础,在实际应用中,有许多种方法设计汽车尾灯的控制,在本次设计模拟电路中,我用的是AT89S52单片机作为整个电路的设计核心来控制整个电路的模拟功能,整个电路变的简单、直观,制作方便,而且容易操作,51单片机可反复擦写,性能可靠等优点。
关键词:AT89S52、74HC595、 LED灯、汽车尾灯abstractIn this paper,Simulation this paper mainly use AT89S52 car taillight controller of intelligent control, with eight car tail lights, LED lights simulation six independent keys corresponding to turn right, turn left, risk warning, night mode, check the switch signal, brake different state, in the actual design analog circuits, I joined the 74 hc595 are needed chip, reduce the use of 51 single-chip microcomputer I / 0 interface to use, in a complex circuit, it is a good way to realize the advantages of a different circuit chip control. In the actual design automobile tail light control circuit simulation, know the LED driver circuit characteristics, put forward the corresponding solution, the reliability design. Simulation in the design automobile tail light control circuit, can be a very good combination of we learned in the course of function and use of 51 single-chip microcomputer and the C language programming, analog electronic circuit, and digital circuit basis, in practice, there are many ways of design automobile tail light control, in the analog circuit design, I am using AT89S52 as the core to control circuit design of the circuit simulation function,the whole circuit is simple and intuitive, and convenient, and easy to operate, 51 single-chip microcomputer can wipe again and again, the advantages of reliable performance.Keywords: AT89S52, 74 hc595 are needed, LED lights, car tail lights课题的研究背景与意义汽车灯光简介汽车工业上的应用汽车用灯包含汽车内部的仪表板、音响指示灯、开关的背光源、阅读灯和外部的刹车灯、尾灯、侧灯以及头灯等。
汽车尾灯控制器的电路设计
课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目: 汽车尾灯控制器的电路设计一、训练目的:主要目的就是对学生进行基础课程、基本技能、基本动手能力的强化训练,提高学生的基础理论知识、基本动手能力,提高人才培养的基本素质。
二、初始条件:计算机;Microsoft Office Word 软件;PROTEL软件本设计既可以使用中、小规模集成电路芯片7400、7404、74138、7476、7486和其它器件实现对汽车尾灯显示的控制功能。
本设计也可以使用单片机系统构建简易频率计。
工作电源Vcc为12V。
电路组成框图如图1所示:图1汽车尾灯控制电路框图要求完成的主要任务: (包括课程设计工作量及技术要求,以及说明书撰写等具体要求)1、课程设计工作量:1周。
2、技术要求:设汽车尾部左右两侧各有3个指示灯(用发光管模拟),要求是:①汽车正常行驶时,尾灯全部熄灭。
②当汽车右转弯时,右侧3个指示灯按右循顺序点亮。
③当汽车左转弯时,左侧3个指示灯按左循顺序点亮。
④临时刹车时,所有指示灯同时闪烁。
⑤选择电路方案,完成对确定方案电路的设计。
计算电路元件参数与元件选择、并画出总体电路原理图,阐述基本原理。
制作实际运行装置。
3、查阅至少5篇参考文献。
按《武汉理工大学课程设计工作规范》要求撰写设计报告书。
全文用A4纸打印,图纸应符合绘图规范。
4.时间安排:7.5:理论设计7.6~7.7:安装调试或仿真7.8:撰写报告7.9:答辩指导教师签名:2010年6月10日系主任签名:2010年 6 月10 日目录1摘要 (1)2设计要求与思路 (1)2.1设计目的与要求 (2)2.2设计思路构想 (2)223单元电路设计 (4)3.1 秒脉冲电路的设计 (4)3.2 开关控制电路的设计 (5)3.3 三进制计数器电路的设计 (4)3.4 译码与显示驱动电路的设计 (7)3.5 尾灯状态显示电路的设计 (8)4电路仿真与分析 (10)4.1电路仿真总电路图 (10)4.2汽车尾灯控制器电路的工作原理 (10)5 电路安装与调试 (11)5.1电路安装过程 (11)5.2电路的调试 (11)6 元器件清单 (11)7 设计体会 (13)参考文献 (14)1摘要课程设计作为数字电子技术和模拟电子技术课程的重要组成部分,目的是一方面使我们能够进一步理解课程内容,基本掌握数字系统设计和调试的方法,增加集成电路应用知识,培养我们的实际动手能力以及分析、解决问题的能力。
(完整word版)EDA课程设计——汽车尾灯控制器设计
课程设计课程设计名称:EDA课程设计专业班级学生姓名:学号:指导教师:课程设计时间:电子信息科学与技术专业课程设计任务书说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页汽车尾灯控制器设计引言随着集成电路和计算机技术的飞速发展,EDA技术应运而生,它是一种高级、快速、有效的电子设计自动化技术。
EDA将大量的电路功能集成到一个芯片中,并且可以由用户自行设计逻辑功能,提高了系统的集成度和可靠性。
运用EDA技术可以方便、快捷设计电路系统。
本文基于EDA系统,在MAX+plusII软件平台上,完成了汽车尾灯电路的设计。
采用VHDL 硬件描述语言描述汽车尾灯电路,完成对电路的功能仿真。
在设计过程中,重点探讨了汽车尾灯电路的设计思路和功能模块划分,通过分析仿真波形表明设计的汽车尾灯电路完成了预期的功能。
1 设计任务及要求1.1设计内容根据计算机中状态机原理,利用VHDL设计汽车尾灯控制器的各个模块,并使用EDA 工具对各模块进行仿真验证。
汽车尾灯控制器的设计分为4个模块:时钟分频模块、汽车尾灯主控模块,左边灯控制模块和右边灯控制模块。
把各个模块整合后就形成了汽车尾灯控制器。
通过输入系统时钟信号和相关的汽车控制信号,汽车尾灯将正确显示当前汽车的控制状态。
1.2设计要求(1)汽车尾部左右两侧各有多盏指示灯。
(2)汽车正常行驶时指示灯都不亮。
(3)汽车右转弯时,右侧的一盏指示灯亮。
(4)汽车左转弯时,左侧的一盏指示灯亮。
(5)汽车刹车时,左右两侧的一盏指示灯同时亮。
(6)汽车在夜间行驶时,左右两侧有指示灯同时一直亮,供照明使用。
2设计原理及总体框图汽车尾灯控制器就是一个状态机的实例。
当汽车正常行驶时所有指示灯都不亮;当汽车向右转弯时,汽车右侧的指示灯ldright亮;当汽车向左侧转弯时,汽车左侧的指示灯ldleft亮;当汽车刹车时,汽车右侧的指示灯ldbrake1和汽车左侧的指示灯ldbrake2同时亮;当汽车在夜间行驶时,汽车右侧的指示灯ldnight1和汽车左侧的指示灯ldnight2同时一直亮;当于大雾天行驶时右侧指示灯ldfoggy1和左侧指示灯ldfoggy2同时亮。
完整word版汽车尾灯控制器的设计EDA课程设计
探※※※※※※※2008级学生 EDA 课程设计探※※※※※※※EDA 课程设计报告谢亨0812201-48物理与电信工程系 电子信息工程周来秀讲师2011年6月10日课题名称汽车尾灯控制器的设计 指导教师设计任务及要求:设计一个汽车尾灯控制器,功能及要求如下:汽车正常行驶时,指示灯不亮。
汽车右转时,右侧的指示灯亮。
汽车左转时,左侧的指示灯亮。
汽车在倒车时,右侧的指示灯不断闪烁。
指导教师签名:二、指导教师评语:指导教师签名: ____________年 月 日二、成绩验收盖章(4) 汽车刹车时,左右两侧的指示灯同时亮。
(5) 汽车在雾中行驶时,左侧的指示灯不断闪烁。
(6)年月日汽车尾灯控制器的设计(湖南城市学院物理与电信工程系电子信息工程专业,湖南益阳, (1)学会在Quartus n 环境中运用VHDL 语言设计方法来构建具有一定逻辑功能的模块,并能运用原理图设计方法完成顶层设计。
掌握所学的课程知识和基本 单元电路的综合设计应用。
(2)通过对实用汽车尾灯控制器的设计,巩固和综合运用所学知识,提高设计能力,并掌握汽车尾灯控制在FPGA 中实现的方法。
2设计的主要内容和要求汽车正常行驶时,指示灯不亮。
汽车右转时,右侧的指示灯亮。
汽车在倒车时,右侧的指示灯不断闪烁。
3整体设计方案汽车尾灯控制器就是一个状态机的实例。
整体设计方框图如图3.1所示左侧控制模块主控制模 块(含CLK)右侧控制模块图3.1整体设计方框图整个系统由4个模块组成:主控制模块,左侧控制模块,雾、倒车控制模块, 右侧控制模块41300)(3) 汽车左转时,左侧的指示灯亮。
(4) 汽车刹车时,左右两侧的指示灯同时亮。
(5) 汽车在雾中行驶时,左侧的指示灯不断闪烁。
雾、倒车控制模块显示模块和显示模块。
其中主控制模块主要包括转向控制、雾中行驶控制和倒车控制,CLK为时钟信号。
左侧控制模块主要包括对左侧转向和刹车指示灯的控制。
右侧控制模块主要包括对右侧转向和刹车指示灯的控制。
汽车尾灯控制电路doc
五、
逻辑功能表
由上式得开关控制电路,如图所示:
开关控制电路
六、
汽车尾灯控制电路如图8所示,其显示驱动电路由6个发光二极管构成;译码电路由3—8线译码器74LSl38和6个与门构成。74LSl38的三个输入端A2、A1、A0分别接S1、Q1、Q0,而Q1Q0是三进制计数器的输出端。当S1=0,使能信号A=G=1,计数器的状态为00,01,10时,74LSl38对应的输出端 、 、 依次为0有效( 、 、 信号为“1”无效),反相器G1—G3的输出端也依次为0,故指示灯D1→D2→D3按顺序点亮,示意汽车右转弯。若上述条件不变,而S1=1,则74LSl38对应的输出端 、 、 依次为0有效,即反相器G4~G6的输出端依次为0,故指示灯D4→D5→D6按顺序点亮,示意汽车左转弯。当G=0,A=1时,74LSl38的输出端全为1,G6~G1的输出端也全为1,指示灯全灭;当G=0,A=CP时,指示灯随CP的频率闪烁。整体电路图如下:
在课程设计期间,我努力上网和到图书馆找资料,学习相关理论知识,虽然有些辛苦,但也是值得的 。设计中基本实现了汽车在运行时候尾灯点亮方式的各种情况。由于在行车的时候都是用开关控制的,所以每一个开关应该有一个消除机械振动的装置,可以利用基本RS触发器来实现。在设计中可以再多用一个74161来做,从而简化电路图。所以如果在时间允许的条件下可以对这一系列的不足进行解决,从而是整个系统更加可靠。
正确的组装方法和合理的布局,不仅可使电路整齐美观、工作可靠,而且便于检查、调试和排除故障。如果能在组装前先拟订出组装草图,则可获得事半功倍之效果,使组装既快又好。
汽车尾灯控制器设计——完整版
1、Proteus简介1.1 概述Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前最好的仿真单片机及外围器件的工具。
虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。
Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PC B设计,真正实现了从概念到产品的完整设计。
是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、H C11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。
在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。
1.2 具有四大功能模块:1.2.1 智能原理图设计(ISIS)丰富的器件库:超过27000种元器件,可方便地创建新元件;智能的器件搜索:通过模糊搜索可以快速定位所需要的器件;智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间;支持总线结构:使用总线器件和总线布线使电路设计简明清晰;可输出高质量图纸:通过个性化设置,可以生成印刷质量的BMP图纸,可以方便地供WORD、POWERPOINT等多种文档使用。
1.2.2 完善的电路仿真功能(Prospice)Prospice混合仿真:基于工业标准SPICE3F5,实现数字/模拟电路的混合仿真;超过27000个仿真器件:可以通过内部原型或使用厂家的SPICE文件自行设计仿真器件,Labcenter也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件;多样的激励源:包括直流、正弦、脉冲、分段线性脉冲、音频(使用wav 文件)、指数信号、单频FM、数字时钟和码流,还支持文件形式的信号输入;丰富的虚拟仪器:13种虚拟仪器,面板操作逼真,如示波器、逻辑分析仪、信号发生器、直流电压/电流表、交流电压/电流表、数字图案发生器、频率计/计数器、逻辑探头、虚拟终端、SPI调试器、I2C调试器等;生动的仿真显示:用色点显示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用可以使仿真更加直观、生动;高级图形仿真功能(ASF):基于图标的分析可以精确分析电路的多项指标,包括工作点、瞬态特性、频率特性、传输特性、噪声、失真、傅立叶频谱分析等,还可以进行一致性分析;1.2.3 独特的单片机协同仿真功能(VSM)支持主流的CPU类型:如ARM7、8051/52、AVR、PIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU类型随着版本升级还在继续增加,如即将支持CORTEX、DSP处理器;支持通用外设模型:如字符LCD模块、图形LCD模块、LED点阵、LED七段显示模块、键盘/按键、直流/步进/伺服电机、RS232虚拟终端、电子温度计等等,其COMPIM(COM口物理接口模型)还可以使仿真电路通过PC机串口和外部电路实现双向异步串行通信;实时仿真:支持UART/USART/EUSARTs仿真、中断仿真、SPI/I2C仿真、MSSP 仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿真;编译及调试:支持单片机汇编语言的编辑/编译/源码级仿真,内带8051、AV R、PIC的汇编编译器,也可以与第三方集成编译环境(如IAR、Keil和Hitech)结合,进行高级语言的源码级仿真和调试;1.2.4 实用的PCB设计平台原理图到PCB的快速通道:原理图设计完成后,一键便可进入ARES的PCB 设计环境,实现从概念到产品的完整设计;先进的自动布局/布线功能:支持器件的自动/人工布局;支持无网格自动布线或人工布线;支持引脚交换/门交换功能使PCB设计更为合理;完整的PCB设计功能:最多可设计16个铜箔层,2个丝印层,4个机械层(含板边),灵活的布线策略供用户设置,自动设计规则检查,3D 可视化预览;多种输出格式的支持:可以输出多种格式文件,包括Gerber文件的导入或导出,便利与其它PCB设计工具的互转(如protel)和PCB板的设计和加工。
汽车尾灯控制电路设计课程设计-10页word资料
汽车尾灯控制电路设计第1章设计任务及要求1.1设计任务设计一个汽车尾灯控制电路,用六个发光二极管模拟汽车尾灯(左右各三个),用开关J1、J2选择控制汽车正常运行、右转弯、左转弯和刹车时尾灯的情况。
1.2设计要求1、汽车正常运行时尾灯全部熄灭。
2、汽车左转弯时左边的三个发光二极管按顺序循环点亮。
3、汽车右转弯时右边的三个发光二极管按顺序循环点亮。
4、汽车刹车时所有的指示灯随CP脉冲同时闪烁。
设计要求具体见表1-1。
表1-1汽车尾灯显示状态变化表第2章设计方案2.1 汽车尾灯设计要求汽车行驶时有正常行驶、左转、右转和刹车四种情况,设汽车尾部左右两侧各有3个指示灯(用发光二极管模拟)。
1.汽车正常运行时指示灯全灭2.汽车右转弯时,右侧3个灯按右循环顺序点亮3.汽车左转弯时,左侧3个灯按左循环顺序点亮4.汽车临时刹车时所有指示灯同时闪烁2.2 设计原理及原理框图汽车尾灯控制电路主要由开关控制电路,三进制计数器,译码、显示驱动电路组成。
由于汽车左转或右转时,三个指示灯循环点亮,所以用三进制计数器控制译码器电路顺序输出低电平,从而控制尾灯按要求点亮。
首先,设置两个可控的开关,可产生00、01、10、11四种状态。
开关置为00状态时,汽车处于正常行驶状态;开关置为01状态时,汽车处于右转弯的状态;开关置为10状态时,汽车处于左转弯的状态;开关置为11状态时,汽车处于刹车状态。
三进制计数器可由J-K触发器构成;译码电路可用译码器74LS138和6个与非门构成;显示、驱动电路由6个发光二极管和6个反向器构成。
原理图如2-1所示:第3.1 译码、显示驱动电路译码器是一种具有“翻译”功能的逻辑电路,这种电路能将输入二进制代码的各种状态,按照其原意翻译成对应的输出信号。
有一些译码器设有一个和多个使能控制输入端,又成为片选端,用来控制允许译码或禁止译码。
74LS138是一种译码器,由于74LS138有3个输入端、8个输出端,所以,又称为3线~8线译码器。
尾灯控制器设计报告
电子电路课程设计尾灯控制器设计姓名:戴莉娜学号:201511504105班级:生医151成绩:电子电路课程设计实验报告尾灯控制器一、设计要求设计一个汽车尾灯控制电路,要求汽车尾部左右两侧各有3个指示灯,共6个指示灯。
在右转弯时,右侧3个指示灯按右循环顺序点亮;在左转弯时,左侧3个指示灯按左循环顺序点亮;闪烁时6个灯全亮。
关闭则灯不亮,系统默认为灯不亮。
二、设计目的1.综合运用相关课程中所学到的知识去完成设计课题。
2.熟悉常用芯片和电子器件的类型及特性,掌握合理运用器件的原则。
3.学会电路的设计与仿真。
4.通过查阅手册和相关文献资料,培养学生独立分析和解决问题的能力。
5.培养严肃认真的工作作风和严谨的科学态度。
6.能自己熟练连接实现逻辑电路。
7.掌握基本逻辑式的化简8.熟悉集成电路的引脚安排9.掌握Multisim的基本用法10.掌握芯片的逻辑功能和译码显示器的使用方法三、设计方案汽车尾灯控制电路主要由模式控制电路,三进制计数器,译码与显示驱动电路和尾灯状态显示四部分构成。
实验要求实现正常行驶、左转、右转、刹车这四种状态下汽车尾灯的显示情况。
我们可以用6个LED显示灯来模拟汽车的尾灯,左边三个,右边三个。
当汽车正常行驶,在两侧的LED灯全部熄灭;转向时,汽车对应一侧的灯循环点亮;刹车情况下,所有的灯全部闪。
设置两个可控制的开关,设计电路实现所需达到功能。
通过双J-K触发器可产生00、01、10、11四种状态。
1.开关置为00状态时,表示汽车处于正常运行状态。
2.开关置为0 1状态时,表示汽车处于右转弯的状态。
3.开关置为1 0状态时,表示汽车处于左转弯的状态。
4.开关置为11状态时,表示尾灯处于闪烁的状态。
其中,K1 控制汽车尾灯的左转,K2控制右转,K3控制刹车。
当所有开关为低电平时,表示汽车正常行驶;当有一个转向灯开关为高电平时,汽车相应一侧的灯循环点亮;当刹车开关为高电平时,6个灯同时闪。
译码与显示电路可用3-8线译码器74LS138、6个与非门和6个反相器构成。
汽车尾灯控制电路的设计lww
汽车尾灯控制电路的设计一.概述汽车尾灯控制电路是很常用的工作电路,在日常的生活中有着很广泛的使用。
汽车行驶时,会出现正常行驶、左转弯、右转弯、刹车四种情况,针对这四种情况可以设计出汽车尾灯的控制电路来表示这四种状态。
设计一个汽车尾灯控制电路,技术指标如下:假设汽车尾部左右两侧各有3个指示灯(用发光二极管模拟);汽车正常运行时指示灯全灭;汽车左转弯时,左侧3个指示灯按左循环顺序点亮;汽车右转弯时,右侧3个指示灯按右循环顺序点亮;临时刹车时所有指示灯同时闪烁。
二.技术指标2.1初始条件直流可调稳压电源一台、万用表一块、面包板一块、元器件若干、剪刀、镊子等必备工具2.2技术要求设计汽车尾部左右两侧各有3个指示灯(用发光二极管模拟)。
要求实现(1)汽车正常运行时指示灯全灭;(2)右转弯时右侧3个指示灯按右循环顺序点亮;(3)左转弯时左侧3个指示灯按左循环顺序点亮;(4)临时刹车时所有指示灯同时闪烁。
三.方案论证在设计本电路时,一共考虑过两种方案。
这两种方案在于产生001,010,100三种信号的方法不同。
3.1方案一1汽车尾灯控制电路主要由D触发器逻辑电路,左转、右转控制电路,刹车控制电路构成。
首先将脉冲信号CLK提供给D触发器逻辑电路。
用三片D触发器设计一个逻辑电路可以产生001、010、100的循环信号。
将此信号作为左转、右转的原始信号。
设置左转控制开关和右转控制开关。
通过开关的控制将左转、右转的原始信号通过逻辑电路分别输出到左、右的3个汽车尾灯上。
这部分电路起到信号分拣的作用。
设置刹车控制开关,将脉冲信号CLK提供给刹车控制电路。
当开关置为刹车信号时,分拣之后的信号通过逻辑电路实现刹车时所有指示灯随着时钟信号CLK全部闪烁的功能。
最终得到的信号即可输出到发光二极管上,实现所需功能。
方案一原理框图如图(1)所示。
图(1)方案一原理框图3.2方案二汽车尾灯控制电路主要由开关控制电路,三进制计数器,译码电路,显示、驱动电路构成。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《可编程器件》课程设计报告课题:汽车尾灯控制器设计班级 ____________________ 学号______________________ 学生姓名 ___________________________________________ 专业 _______________________________________________ 系别 _______________________________________________ 指导老师 ___________________________________________淮阴工学院电子与电气工程学院2014年11月一、设计目的《可编程器件》课程设计是时一项重要的实践性教育环节, 是学生在校期间必须接受的一项 工程训练。
在课程设计过程中,在教师指导下,运用工程的方法, 通过一个简单课题的设计 练习,可使学生通过综合的系统设计,熟悉应用系统的设计过程、设计要求、完成的工作内容和具体的设计方法,了解必须提交的各项工程文件, 也达到巩固、充实和综合运用所学知 识解决实际问题的目的。
通过课程设计,应能加强学生如下能力的培养: (1) 独立工作能力和创造力;(2) 综合运用专业知识及基础知识,解决实际工程技术问题的能力; (3) 查阅图书资料、产品手册和各种工具书的能力; (4) 工程绘图的能力;(5) 编写技术报告和编制技术资料的能力。
二、设计要求1、汽车尾灯控制器的工作原理汽车尾灯控制器就是一个状态机的实例。
当汽车正常行驶时所有指示灯都不亮;当汽车 向右转弯时,汽车右侧的指示灯 RD1亮;当汽车向左侧转弯时, 汽车左侧的指示灯 LD1亮;当汽车刹车时,汽车右侧的指示灯 RD2和汽车左侧的指示灯 LD2同时亮;当汽车在夜间行驶时,汽车右侧的指示灯RD3和汽车左侧的指示灯 LD3同时一直亮。
通过设置系统的输入信号:系统时钟信号 elk ,汽车左转弯控制信号 left ,汽车右转弯控 制信号right ,刹车信号brake ,夜间行驶信号 night 系统的输出信号:汽车左侧 3盏指示灯 LD1,LD2,LD3和汽车右侧 3盏指示灯RD1,RD2,RD3实现以上功能。
系统的整体组装设计原理如图所示:系统设计整体框图汽车尾灯点亮与汽车运行状态之间的关系(1) 汽车正常行驶是指示灯都不亮。
(2) 汽车右转弯时,右侧的一盏指示灯 RD1 交替闪烁,周期为 2秒,其余灯熄灭。
(3) 汽车左转弯时,左侧的一盏指示灯 LD1 交替闪烁,周期为 2秒,其余灯熄灭。
(4) 汽车刹车时,左右两侧的一盏指示灯LD2,RD2同时亮。
(5)汽车夜间行驶时,左右两侧的一盏指示灯LD3,RD3同时一直亮,供照明使用三、设计的具体实现O假设汽车尾部左右两侧各有 3盏知识灯,其控制功能包括:2、单兀模块设计与分析(1)、汽车尾灯主控模块数据入口:RIGHT :右转信号;LEFT :左转信号;BRAKE :刹车信号;NIGHT :夜间行驶信号;数据入口:LP :左侧灯控制信号;RP:右侧灯控制信号;LR :错误控制信号;BRAKE_LED :杀U车控制信号;NIGHT_LED :夜间行驶控制信号;VHDL程序(CTRL.VHD :LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CTRL ISPORT(LEFT,RIGHT,BRAKE,NIGHT: IN STD_LOGIC;LP,RP, LR,BRAKE_LED,NIGHT_LED: OUT STD_LOGIC); END ENTITY CTRL;ARCHITECTURE ART OF CTRL ISBEGINNIGHT_LED<=NIGHT;BRAKE_LED<=BRAKE;PROCESS(LEFT,RIGHT)VARIABLE TEMP:STD_L0GIC_VECT0R(1 DOWNTO 0);BEGINTEMP:=LEFT&RIGHT;CASE TEMP ISWHEN "00"=>LP<='0';RP<='0';LR<='0:--当汽车直行时,左右灯都不亮WHEN "01"=>LP<='0';RP<='1';LR<='0:; --当汽车右拐时,右拐指示灯亮WHEN "10"=>LP<='1';RP<='0';LR<='0:-- 当汽车左拐时,左指示灯亮WHEN OTHERS=>LP<='0';RP<='0';LR<='1:--当汽车刹车时,左右灯都亮END CASE;END PROCESS;END ARCHITECTURE ART;仿真波形:该段程序用于对汽车尾灯进行整体控制,当输入为左转信号时,输出左侧灯控制信号;当输入为右转信号时,输出右侧灯控制信号;当同时输入LEFT和RIGHT信号时,输出错误控制信号。
当输入为刹车信号时,输出刹车控制信号;当输入为夜间行驶信号时,输出为夜间行驶控制信号。
(2)、左边灯控制模块数据入口:CLK :时钟控制信号;LP :左侧灯控制信号;LR :错误控制信号;BRAKE :杀U车控制信号NIGHT :夜间行驶控制信号; 数据出口: LEDL :左侧LD1灯控制信号 LEDB :左侧LD2灯控制信号 LEDN :左侧LD3灯控制信号 VHDL 程序(LC.VHD : LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; ENTITY LC ISPORT(CLK,LP ,L R,BRAKE,NIGHT: IN STD_LOGIC;LEDL,LEDB, LEDN: OUT STD_LOGIC);END ENTITY LC;ARCHITECTURE ART OF LC ISBEGINLEDB<=BRAKE; LEDN<=NIGHT; PROCESS(CLK,LP, LR) BEGINIF CLK'EVENT AND CLK='1' THENELSE --相反情况LEDL<='1'; END IF;ELSELEDL<='0'; END IF; END IF; END PROCESS;END ARCHITECTURE ART; 仿真波形:功能:本程序用于控制左侧灯的亮、灭和闪烁情况,当时钟上升沿信号和左侧灯控制信号或刹--时钟上升沿有效IF(LR='O') THENIF(LP='O')THEN LEDL<='0'; --没有刹车信号时 --没有左拐信号时 --左信号灯不亮QUK USDLOLU3H LT LR HWTLMJ] u 24D.D n> 7SQ .0 »页ap na阿D D3倾卩» ^LvilrLioa. awLr : T LILDE^imulntian车控制信号或夜间行驶信号同时出现时,左侧相应的灯亮或出现闪烁。
当错误控制信号出现时,LD1灯不亮。
(3)、右边灯控制模块数据入口:CLK :时钟控制信号;RP:右侧灯控制信号;LR :错误控制信号;BRAKE :刹车控制信号;NIGHT :夜间行驶控制信号;数据出口:LEDR :右侧RD1灯控制信号;LEDB :右侧RD2灯控制信号;LEDN :右侧RD3灯控制信号;VHDL程序(RC.VHD :LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY RC ISPORT(CLK,RP,LR,BRAKE,NIGHT: IN STD_LOGIC;LEDR ,L EDB, LEDN: OUT STD_LOGIC);END ENTITY RC;ARCHITECTURE ART OF RC ISBEGINLEDB<=BRAKE;LEDN<=NIGHT;PROCESS(CLK,RP,LR)BEGINIF CLK'EVENT AND CLK='1' THEN--检测时钟上升沿IF(LR='O') THENIF(RP='O') THENLEDR<='0';ELSELEDR<='1';END IF;ELSELEDR<='0';END IF;END IF;END PROCESS;END ARCHITECTURE ART;仿真波形:SimulationuLkzJ 1.1100. BC-j* TLBLb[功能:本描述用于控制右侧灯的亮、灭和闪烁情况,当时钟上升沿信号和右侧灯控制信号或刹车控制信号或夜间行驶信号同时出现时,右侧相应的灯亮或出现闪烁。
当错误控制信号出现时,RD1灯不亮。
(4)、时钟分频模块VHDL程序(SZ.VHD :LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SZ ISPORT(CLK: IN STD_LOGIC; --时钟输入CP: OUT STD_LOGIC);END ENTITY SZ;ARCHITECTURE ART OF SZ ISSIGNAL COUNT:STD_LOGIC_VECTOR(7 DOWNTO 0); --定义八位标准逻辑位矢量数据类型BEGINPROCESS(CLK)BEGINIF CLK'EVENT AND CLK='1' THEN --检测时钟上升沿COUNT<=COUNT+1;END IF;END PROCESS;CP<=COUNT(3); --输出第五位END ARCHITECTURE ART;仿真波形:这块的功能是对左右两边的LLED1、RLED1的闪烁时间间隔,以CLK为输入信号,CP为输出信号,在程序中定义一个八位节点信号COUNT来放计数值,当CLK的上升沿到来时就开始计数,最后将COUNT(3給CP,实现对CLK的八分频。
再将CP的电平信号分别和LEDL LEDR电平与,最后用输出的电平来控制汽车左右的LLED1、RLED1实现左右转的指示功能。
(5)、顶层文件VHDL程序(tn.VHD):Library ieee;Use ieee.std_logic_1164.all;Use ieee.std_logic_ un sig ned.all;En tity tn isPort(clk:in std_logic;Left:in std_logic;Right: in std_logic;Brake:i n std_logic;Night: in std_logic;Ld1,ld2,ld3:out std_logic;Rd1,rd2,rd3:out std」o gic);End;Architecture bh of tn isComp onent sz isPort(clk:in std_logic;Cp:out std_logic);End comp onent;Comp onent ctrl isPort(left,right,brake ,ni ght:i n std_logic;Lp,rp,lr,brake_led, ni ght_led:out std_logic);End comp onent;Comp onent lc isPort(clk,lp,lr,brake,night:in std_logic;Ledl,ledb,led n:out std_logic);End comp onent;Comp onent rc isPort(clk,rp,lr,brake,night:in std_logic;Ledr,ledb,led n:out std_logic);End comp onent;Signal tmp0,tmp1,tmp2,tmp3,tmp4:std_logic;Sig nal err0,err1,err2,err3,err4,err5:std」o gic;sig nal bm:std_logic;BeginU1:sz port map(clk,bm);U2:ctrl port map(left,right,brake ,ni ght,tmp0,tmp1,tmp2,tmp3,tmp4); U3:lc port map(clk,tmp0,tmp2,tmp3,tmp4,err0,err1,err2);U4:rc port map(clk,tmp1,tmp2,tmp3,tmp4,err3,err4,err5);Ld1<=err0 and bm;Ld2<=err1;Ld3<=err2;Rd1<=err3 and bm;Rd2<=err4;Rd3<=err5;End;仿真波形:四、原理图五、管脚分配六、心得体会本设计基于完成汽车尾灯控制电路,在确立总体预期实现功能的前提下,分层次进行描述,满足设计要求。