汽车尾灯控制器的设计

                        

淮海工学院

课程设计报告书

                  

课程名称:   电子技术课程设计      

题    目:   汽车尾灯控制电路      

系 (院):     电子工程学院        

学    期:       11 –12– 1          

专业班级:      D电子091          

姓    名:                     

学    号:       510920126         

          


1 设计目的和要求

随着社会和经济的逐步发展和进步,汽车已逐步成为了一种普及的代步工具。在不断增强交通安全防患意识外,绚丽的外观和便于辨识的装饰也在不断的完善中。这次我所要研究的课题就是汽车尾灯的控制。设计一个汽车尾灯控制器,实现对汽车尾灯显示状态的控制。在汽车尾部左右两侧各有三个指示灯(假设采用发光二极管模拟),根据汽车运行情况,指示灯具有4种不同的显示模式。

(1)  汽车正向行驶时,左右两侧的指示灯全部处于熄灭状态。

(2)  汽车右转弯行驶时,右侧的3个指示灯按右循环顺序点亮。

(3) 汽车左转弯行驶时,左侧的3个指示灯按左循环顺序点亮。

(4)  汽车临时刹车时,左右两侧的指示灯同时处于闪烁状态。

通过课程设计,自己动手解决实际问题。巩固和运用在《电路》《数字逻辑电路》等课程中所学的理论知识和实验技能,基本掌握常用数字电子线路的一般设计方法,提高设计能力和试验技能,为以后从事电子电路设计、研制电子产品打下基础。

2 设计指标

汽车尾灯控制器的设计包括5个单元电路设计,其中包括尾灯状态显示电路设计、译码与显示驱动电路设计、三进制计数器设计、模式控制电路设计和控制器总体电路设计。设计完成后(如果在实验室安装的话)注意以下调试要点:

A:在面包板上根据设计的系统正确连线。

B:输入CP脉冲(用示波器检测频率情况)。

C:搬动开关,观察显示情况。

3 总体框图设计

3.1 汽车尾灯显示状态与汽车运行状态的关系

首先要设置2个状态控制变量,来区分汽车尾灯的4种不同的显示模式。下面用开关S1、S0进行显示模式控制,当开关S1S0为00时,汽车正常行驶;为01表示右转弯;为10表示左转弯;11表示临时刹车。分析汽车尾灯显示状态与汽车运行状态的关系,

详见下表3-1。

表3-1 汽车尾灯显示状态与汽车运行状态的关系

3.2 汽车尾灯控制器功能描述

当汽车左、右转弯行驶时,3个指示灯根据转弯方向循环顺序点亮,所以可以用一个三进制数器的状态控制译码器电路顺序输出高电平,按要求顺序点亮左、右尾灯。设三进制计数器的状态用Q0、Q1表示。设灯亮为1,灯灭为0.其功能见表3-2。由上述汽车尾灯显示状态与汽车运行状态的关系可知,汽车正常运行时,灯全灭;汽车左转时,LD1、LD2、LD3循环亮;汽车右转时,RD1、RD2、RD3循环亮;紧急刹车时,不论Q1Q0什么状态,有脉冲来时灯就全亮。

表3-2 汽车尾灯控制器的逻辑功能表

3.3 汽车尾灯控制器的结构框图

  根据上述的状态关系和逻辑功能,分析得出汽车尾灯控制器的总体结构框图,整个电路可由模式控制电路、三进制计数器、译码器与显示驱动电路、尾灯状态显示器四部分组成,如图3-1。

 


图3-1 汽车尾灯控制器的结构框图

4 功能模块设计

4.1 三进制计数器

  首先要列出三进制计数器的状态表,如表4-1所示。

表4-1 三进制计数器状态表

若用JK触发器作为存储元件,可设计出逻辑电路图,如图4-1所示。

图4-1 三进制计数器的逻辑电路

4.2 译码器与显示驱动电路

译码器与显示驱动电路的功能是在模式控制电路输出和三进制计数器状态的作用下,提供6个尾灯控制信号。(当译码器驱动电路输出地控制信号为低电平时,相应指示灯点亮)

译码器与显示驱动电路可以由3-8线译码器74LS138、6个与非门和6个反相器构成。译码器74LS138的输入端A0、A1、A2分别接S1、Q1、Q0

(1)   当G=F=1、S1=0时,对应计数器状态Q1Q0为00、01、10,译码器输出Y0,Y1,Y2,依次为0,使得与指示灯RD1、RD2、RD3对应的反向器输出依次为低电平,从而使指示灯RD1-RD2-RD3依次点亮,示意汽车右转弯;

(2)   当G=F=1、S1=1时,对应计数器状态Q1Q0为00、01、10,译码器输出Y4,Y5,Y6,依次为0,使得与指示灯LD1、LD2、LD3对应的反向器输出依次为低电平,从而使指示灯LD1-LD2-LD3依次点亮,示意汽车左转弯;

(3)   当G=0,F=CP时,所有指示灯随CP的频率闪烁,示意汽车临时刹车。

图4-2译码器与显示驱动电路

4.2 尾灯状态显示电路

尾灯状态显示电路可由6个发光二极管和6个电阻组成。当6个反相器的输出为低电平时,相应发光二极管被点亮。(如图4-3所示)

图4-3 尾灯状态显示电路

4.3 模式控制电路

由于译码器与显示驱动电路的使能控制信号为G和F,故G与译码器74LS138的使能端G1相连接,F与显示驱动电路中与非门的一个输入端相连接。由总体逻辑功能可知,G和F与开关控制变量S1、S0,以及脉冲CP之间的关系,见表4-2。

表4-2 使能控制信号与模式控制变量、时钟脉冲的关系

根据表4-2所示,可以求出使能控制信号G和F的逻辑表达式为:

(1)G=S1(----)·S0+S1·S0(----)

=S1?S0

(2)F=S1(----)·S0(----)+S1(----)·S0+S1·S0(----)+S1·S0·CP

      =S1(----)(S0(----)+S0)+S1·S0(----)+S1·S0·CP

=S1(----)+S0(----)+S1·S0·CP

=S1S0(--------)+S1·S0·CP

=S1S0(--------)+CP

再根据所求的逻辑表达式,画出模式控制电路图,图4-4

图4-4 模式控制电路

5 总电路图设计

   在完成各个模块的功能设计后,画出各个模块的电路图,即可得到汽车尾灯控制器的完整逻辑电路图,如图5-1。(可见附录2)

图5-1 汽车尾灯控制器的逻辑电路图

6 元件清单

表6-1 主要元器件清单

7 参考资料

1《数字电子技术基础(第四版)》,阎石 主编,北京:高等教育出版社,1998年

2《模拟电子技术基础(第三版)》,王远 主编,北京:机械工业出版社,20##年

3《电子技术试验与课程设计》,贾更新 主编,西安:西北工业大学出版社,20##年

4百度文库http://wenku.baidu.com/view/a376bf104431b90d6c85c768.html

8 总结

     在这次的电子课程设计中,我感觉收获颇丰。和康家银老师的计算机课程设计不同,在计算机课程设计时,主要是通过Delphi的编程来完成目的功能即可。而此次的电子课程设计却是通过翻阅资料和老师的任务指导书来完成现实生活中的汽车尾灯控制器的设计。表面上汽车尾灯控制器的原理通俗易懂,可是在设计的实际过程中却是困难重重,麻烦多多,从元器件的选择,到芯片的制作与生成,再到功能模块的实现,都是通过在图书馆和网络上的查阅才整理,总结出来的。虽说肯定会有美中不足,但这都是我2个星期努力奋斗完成的,是自己知识的结晶。

通过对这个电子课程设计的学习,为我们掌握数字逻辑电路的开发打下了坚实的基础,还使我掌握了设计复杂电路和调试技能,培养了我理论联系实际的能力,提高了我分析问题和解决问题的能力,增强了独立工作的能力。其中感触最深的便是实践联系理论的重要性,当遇到实际问题时,只要认真思考,用所学的知识,再一步一步探索,是完全可以解决遇到的一般问题的。在课程设计的过程中,要时刻保持清醒的头脑,出现错误,一定要认真的冷静的去检查分析错误,不能草草了事,这样做出来的课程设计才能达到它真正的效果,为我们以后步入社会做好充分的准备。

 

第二篇:基于VHDL语言的汽车尾灯的设计

长沙理工大学城南学院

《EDA技术与运用》课程项目报告

基于VHDL语言的汽车尾灯的设计

系别:水利计通系                   

专业班级:通信1202班

组长:罗华伟,201285250228 

成员:梁承武,201285250230

           李  蕾,201285250229

           张蒙蒙,201285250222

           雷子夜,201285250227

指导老师:单树民


目    录

1.设计项目及问题分析.... 2

1.1 设计项目.... 2

1.2 项目分析.... 2

2.设计的目的及意义.... 3

2.1 设计的目的.... 3

2.2 设计的意义.... 3

3.设计步骤.... 4

3.1 画出总体电路原理框图.... 4

3.2 画出功能表.... 4

3.3 编写VHDL程序代码.... 5

3.4 用Quartus Ⅱ软件进行调试.... 6

3.5 顶层模块图.... 7

4.波形仿真及分析.... 7

4.1 波形仿真.... 7

4.2 波形分析.... 7

5.总结.... 8


1.设计项目及问题分析

1.1 设计项目

设计一个汽车尾灯的控制电路,用6只发光二极管模拟6盏汽车尾灯(汽车尾部左、右各3盏),用两个开关作为转弯控制信号(一个开关控制右转弯,另一个开关控制左转弯)。要求:当汽车往前行驶时(此时两个开关都未接通),6盏灯全灭。当汽车转弯时,若右转弯(即右转弯开关接通),右边3盏尾灯从左到右顺序亮灭,左边3盏灯全灭;若左转弯(即左转开关接通),左边3盏尾灯从右至左顺序亮灭,右边3盏灯全灭。当左、右两个开关同时接通时,6盏尾灯同时明、暗闪烁。

1.2 项目分析

用6只发光二极管(leftdeng0、leftdeng1、leftdeng2、righdeng0、righdeng1、righdeng2)模拟6个汽车尾灯(左右各3个),用两个开关(tleft、tright)作为汽车控制信号,分别为:前往行驶、左转弯、右转弯、和刹车。

前往行驶时,6个汽车尾灯全灭;左转弯时,左边3个灯从右到左顺序亮灭,右边3个灯全灭;右转弯时,右边3个灯从左到右顺序亮灭,左边3个灯全灭;刹车时,6个灯同时明、暗闪烁。根据以上分析可以画出尾灯和汽车运行关系表如下所示:

通过以上分析,可以编写出VHDL语言程序代码,通过Quartus Ⅱ软件进行程序的调试和仿真。

2.设计的目的及意义

2.1 设计的目的

其一、设计一个能适应现代汽车智能化发展要求的汽车尾灯控制电路。改善以前的汽车尾灯控制系统,降低汽车尾灯控制器的生产成本。其二、学好VHDL这门硬件描述语言,加深对VHDL语言知识的理解和掌握,提高学习能力和创新能力,使自己适应不断发展的21世纪。

2.2 设计的意义

随着(EDA)仿真技术的发展,数字系统的设计技术和设计工具发生了深刻的变化。利用硬件描述语言(VHDL)对数字系统的硬件电路进行描述是EDA的关键技术之一。VHDL语言是目前主流的硬件描述语言,它具有很强的电路描述和建模能力,具有与具体电路无关和与设计平台无关的特性,在语言易读性和层次化结构方面表现出强大的生命力和应用潜力。

随着人们生活水平的提高,汽车的消费量越来越大。因为人们也越来越忙,不管是夜晚还是阴雨、大雾等天气原因的影响,人们都开着车在纵横交错的马路上行驶,所以人们对汽车安全行驶的要求也越来越高,汽车尾灯控制系统给大家带来了极大的方便。汽车尾灯控制系统是随着汽车智能化技术的发展而发展起来的,汽车尾灯一般是用于微处理器的硬件结构构成,正是因为硬件电路的局限性,不但不能随意的更改电路内部功能和性能,而且可靠性得不到保证,因此对汽车尾灯控制系统的发展带来一定的局限性,难以满足现代汽车的智能化发展。

为了提高人们因夜晚或因天气原因在纵横交错的马路上驾驶的安全系数,也是为了减少交通事故的发生。我们采用了先进的EDA技术,Quartus Ⅱ工作平台和VHDL语言,设计了一种基于FPGA的汽车尾灯控制系统,并对系统进行了仿真机验证。用一片FPGA芯片实现了现代汽车智能化的尾灯控制系统。通过仿真及验证的结果分析,完全适应现代汽车智能化发展要求。不但简化了以前的汽车尾灯控制系统结构,大大降低了生产成本,而且提高了系统的先进性和可靠性。能实现控制器的系统编程。采用这种器件开发的数字系统其升级与改进非常方便。

这一控制电路,结构简单、性能稳定、操作方便、抗干扰能力强。将它应用于现代汽车,不受黑夜或大雾、阴雨天气因素的影响,可以提高安全行驶,避免交通事故的发生。真正的让消费者驾驶汽车的方便和安全。        

3.设计步骤

3.1 画出总体电路原理框图

通过1.2的项目分析,可以画出汽车尾灯控制电路的总体电路原理框图如下所示:

3.2 画出功能表

根据设计项目要求和电路原理框图可以画出汽车尾灯控制逻辑功能表如下所示:

3.3 编写VHDL程序代码

根据以上汽车尾灯控制逻辑功能表和控制电路原理框图可以编写出汽车尾灯控制电路的VHDL程序代码如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

use ieee.STD_LOGIC_UNSIGNED.ALL;

ENTITY weideng IS                 --实体

    port(clk,tright,tleft:IN STD_LOGIC;        --端口说明

         rightdeng:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);

         leftdeng:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));

END ENTITY weideng;       

ARCHITECTURE qiche OF weideng IS        --结构体部分

    SIGNAL leftd:STD_LOGIC_VECTOR(1 DOWNTO 0);

    SIGNAL rightd:STD_LOGIC_VECTOR(1 DOWNTO 0);

BEGIN

control:PROCESS(clk,tleft,tright)

BEGIN

  IF clk'EVENT AND clk='1'THEN

        IF rightd="01"THEN        --右信号

           rightd<="11";

        ELSE rightd<=(rightd-1);

        END IF;

        IF leftd="01"THEN         --左信号

           leftd<="11";

        ELSE leftd<=(leftd-1);

        END IF;

  END IF;

END PROCESS control;

proout:PROCESS(clk,tright,tleft,rightd,leftd)

BEGIN

  IF clk'EVENT AND clk='1'THEN

        IF tright='1'THEN            --右信号有效时

           leftdeng<="000";

     CASE rightd IS                 --右边灯的亮灭状态

        WHEN"01"=>rightdeng<="001";

        WHEN"10"=>rightdeng<="010";

        WHEN"11"=>rightdeng<="100";     

        WHEN OTHERS=>rightdeng<="000";                 

     END CASE;

   ELSIF tright='0'THEN       --右信号无效

         rightdeng<="000";     --右边3个灯全灭

         END IF;

     IF tleft='1'THEN              --左信号有效

            rightdeng<="000";

     CASE leftd IS                 --左边灯的亮灭状态            

        WHEN"01"=>leftdeng<="100";

        WHEN"10"=> leftdeng<="010";

        WHEN"11"=> leftdeng<="001";     

        WHEN OTHERS=> leftdeng<="000";                 

     END CASE;

  ELSIF tleft='0'THEN       --左信号无效

        leftdeng<="000";       --左边3个灯全灭

         END IF;

  END IF;

  IF tleft='1'AND tright='1' THEN      --左右信号都有效时6个灯全亮

     leftdeng<="111";

     rightdeng<="111";     

  ELSIF tright='0'AND tleft='0'THEN    --左右信号都无效时6个灯全灭

        leftdeng<="000";

        rightdeng<="000";

  END IF;

END PROCESS proout;

END qiche;

3.4 用Quartus Ⅱ软件进行调试

首先是在桌面打开QuartusⅡ软件后选择File>>New Project Wizard进入新建工程对话框>>单击Next进入新建工程路径、名称、顶层实体指定对话框(选择好保存路径、输入工程名为weideng),由于只是进行功能和时序仿真,所以直接单击Finish即可。其次是建立VHDL程序文件(选择File>>New打开新建文件对话框>>选择VHDL File即可)。最后是输入汽车尾灯控制电路程序代码>>保存>>对该工程文件进行全程编译处理。如果在编译的过程中发现有错误,则找出并更正错误,直至编译成功为止。

3.5 顶层模块图

4.波形仿真及分析

4.1 波形仿真

先选择File>>New Other Files>>Vector Waveform File>>单击OK即可>>在name下单击鼠标右键>>Insert>>Insert Nodoe or Bus>>Node Finder>>先在Filter:中选择Pins:all>>List单击“>>”符号添加所有引脚>>OK>>OK>>设置好电平后保存。再选择Processing>>Simulator Tool>>在Simulation mode:栏选择Functional(如果是进行时序仿真要选择Timing、进行功能仿真选择Functional)>>Generate Functional Simulation Netlist>>start>>Report完成了功能仿真。进行时序仿真与功能仿真的步骤差不多,只是要在Simulation  mode栏选择Timing就行了。

4.2 波形分析

功能仿真的波形图如下所示:

由上图仿真的波形可以看出:当左、右信号都无效时,则6个灯全灭;当左、右信号都有效时全亮;当左信号有效、右信号无效时,左边3个灯从右到左依次亮灭,右边灯全灭;

当右信号有效、左信号无效时,右边3个灯从左到右依次亮灭,左边灯全灭;完全与功能表一致。

5.总结

   通过设计汽车尾灯控制电路,我们(雷远辉、罗运康)查阅各种VHDL语言资料及思考讨论而完成这次设计项目。在设计的过程中经过了选题的彷徨以及设计程序的繁复等阶段,提高了思考、编程能力和团队的协作能力,更加加深了我们对于硬件描述语言这门课程的理解和学习。我们设计的汽车尾灯控制电路有我们自己团队的创新。

对于设计中遇到的难题,我们明白了应该自己积极动脑思考的同时,还要请教老师和同学,要以积极的态度去设计和分析设计项目,最终完成设计。这次设计使我们明白了只有书本上的知识是不够的,还应该加强自己的动手能力,将理论应用于实践,才能学到真正的知识。

通过本次设计,不仅培养了我们实际操作能力,也培养了我们灵活运用知识,理论联系实际,独立自主的进行设计的能力。这次设计不仅是一个学习新知识、新方法的机会,同时也是对我们所学知识的一次综合的检验和复习,使我们明白了知己的缺陷所在,从而及时的查缺补漏。这样的设计,真正的让我们学以致用。

在设计中要求我们要有耐心和毅力,还要细心,稍不谨慎,一个小小的错误就会导致结果的不正确,二对错误的检查要求我们要有足够的耐心。通过这次设计和设计在遇到的问题,我们也积累了一定的经验,以后从事集成电路设计工作会有一定的帮助。在应用VHDL的过程中让我们真正领会到了其并行运行与其它软件顺序运行的差别及其在电路设计上的优越性。用VHDL硬件描述语言来进行数字系统的设计方便灵活。这样的设计方法不但降低了开发的成本,而且缩短了开发的周期。

在这次设计中用到的技巧有:用了至上而下的顺序设计方式;其中用到了if语句、case语句、进程语句(process)等。

相关推荐