EDA大作业

发布 2020-02-25 07:16:28 阅读 8246

一、设计方案。

1、设计一个汽车尾灯控制器,利用eda软件(max+plusii)进行编译及**,设计输入可采用vhdl硬件描述语言输入法和原理图输入法,通过**查看设计的可行性,因条件有限,只能进行简单的**实验。

2、设计要求。

1)汽车尾部左右两侧各有多盏指示灯。

2)汽车正常行驶时指示灯都不亮。

3)汽车右转弯时,右侧的一盏指示灯亮。

4)汽车左转弯时,左侧的一盏指示灯亮。

5)汽车刹车时,左右两侧的一盏指示灯同时亮。

6)汽车在夜间行驶时,左右两侧有指示灯同时一直亮,供照明使用。

3、系统设计。

系统的输入信号包括:系统时钟信号clk,汽车左转弯控制信号left,汽车右转弯控制信号right,刹车信号brake,夜间行驶信号night。

系统的输入信号包括:汽车左侧3 盏指示灯lled1,lled2,lled3和汽车右侧3盏指示灯rled1,rled2,rled3。

二、方案实施。

各组成模块。

实现的主要功能是通过开关控制从而实现汽车尾灯的点亮方式。汽车尾灯控制器有4个模块组成,分别为:时钟分频模块、汽车尾灯主控模块,左边灯控制模块和右边灯控制模块,时钟分频模块由vhdl程序来实现,vhdl**:

library ieee;

use use

entity sz is

port (clk: in std_logic;

cp: out std_logic);

end entity sz;

architecture art of sz is

signal 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 art;

分频模块**图。

主模块程序:

library ieee;

use entity ctrl is

port( left,right,brake,night:in std_logic;

lp,rp,lr,brake_led,night_led: out std_logic);

end entity ctrl;

architecture art of ctrl is

begin

night_led<=night;

brake_led<=brake;

process(left,right)

variable temp:std_logic_vector(1 downto 0);

begintemp:=left & right;

case temp is

when "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 art;

主控模块**图。

左边灯控制模块。

由vhdl程序来实现,下面是其中的一段vhdl**:

library ieee;

use entity lc is

port (clk,lp,lr,brake,night :in std_logic;

ledl,ledb,ledn: out std_logic);

end entity lc;

architecture art of lc is

begin

ledb<=brake;

ledn<=night;

process(clk,lp,lr)

beginif clk'event and clk = 1' then

if(lr ='0')then

if(lp = 0')then

ledl<='0';

elseledl<='1';

end if;

elseledl <=0';

end if;

end if;

end process;

end art;

左灯模块**图:

右边灯控制模块。

右灯程序如下:

library ieee;

use entity rc is

port (clk, rp, lr, brake, night:in std_logic;

ledr, ledb, ledn : out std_logic );

end entity rc ;

architecture one of rc is

begin

ledb<=brake;

ledn<=night;

process(clk,rp,lr)

beginif clk'event and clk = 1' then

if(lr = 0')then

if(rp = 0')then

ledr <=0';

elseledr <=1';

end if;

elseledr <=0';

end if;

end if;

end process;

end ;右灯控制模块**图:

对时序**图进行分析:

right,left,night,brake 为输入信号,right为1表示右转,left为1表示左转,night为1表示夜间行路,brake为1表示刹车。

rp,lp,night_led,brake_led为输出信号。

当right为1时,产生一个rp为1的信号脉冲输出,当left为1时,产生一个lp为1的信号脉冲输出,当night为1时,产生一个night_led为1的信号脉冲输出。

当brake为1时,产生一个brake_led为1的信号脉冲输出。

左边灯控制模块**及分析。

lp,lr,night,brake 为输入信号,lp为1表示左转,lr为1表示右转,night为1表示夜间行路,brake为1表示刹车。

ledl,ledb,ledn为输出信号,表示汽车左侧的三盏灯。

当lp为1时,ledl输出为1表示左侧灯亮,当brake为1时,ledb输出为1表示左侧灯亮,当night为1时,ledn输出为1表示左侧灯亮。

当lr为1时,左侧三盏灯输出均为0。即没有灯亮。

右边灯控制模块**及分析。

rp,lr,night,brake 为输入信号,lr为1表示左转,rp为1表示右转,night为1表示夜间行路,brake为1表示刹车。

ledr,ledb,ledn为输出信号,表示汽车右侧的三盏灯。

当rp为1时,ledr输出为1表示右侧灯亮,当brake为1时,ledb输出为1表示右侧灯亮,当night为1时,ledn输出为1表示右侧灯亮。

当lr为1时,右侧三盏灯输出均为0。即没有灯亮。

整个系统**及分析。

对时序**图进行分析:

right,left,night,brake 为输入信号,right为1表示右转,left为1表示左转,night为1表示夜间行路,brake为1表示刹车。

rd1,rd2,rd3为输出信号,表示汽车右侧的三盏灯。

ld1,ld2,ld3为输出信号,表示汽车左侧的三盏灯。

当right为1时,rd1输出为1表示右侧灯亮,当left为1时,ld1为输出为1表示左侧灯亮,当night为1时,ld2,rd2输出均为1,表示左,右两侧各有一盏灯亮。

当brake为1时,ld3,rd3输出均为1,表示左,右两侧各有一盏灯亮。

整个系统**图。

总体设计电路图。

EDA大作业

eda技术课程大作业。设计题目 4线 16线译码器设计。学生姓名。学号。专业班级 09电子信息1班 2012年5月26日。4线 8线译码器设计。1.设计背景与设计方案。1.1设计背景。译码器是组合逻辑电路的一个重要器件,它是一种将一种编码转换为另一种编码的逻辑电路,在编码时,每一种二进制 都赋予了特...

EDA大作业

eda技术课程大作业。设计题目 双二选一多路选择器。学生姓名 王行智。学号 201002050002 专业班级 电气自动化技术一班。2012 年 5 月 26日。1.设计背景 在很多时候,要完成一项工作,需要进行两次判断和选择,对于机器和人都是如此,这就需要两个选择器,双2选1多路选择器就应运而生了...

EDA大作业

eda技术 课程大作业。项目名称 实用电路 分析设计。专业班级 微机 10 学号 100507121 姓名 汪丛华。连云港职业技术学院信息工程学院。2011年 12月日。项目一 项目名称 阻容耦合放大电路测试。项目要求 1.分析的基本设置 2.掌握常用的高级 分析方法。项目设计准备分析 1.掌握电路...