电子技术课程设计 汽车尾灯控制电路.doc
文本预览下载声明
电子技术课程设计
——汽车尾灯控制电路
学院
专业、班级
姓名
学号
指导老师
汽车尾灯控制电路
设计任务与要求
内容:用6只发光二极管模拟6盏汽车尾灯(汽车尾部左、右各3盏),
用两个开关作为转弯控制信号(一个开关控制右转弯,另一个控制左
转弯)。
要求:当汽车往前行驶(此时两个都未接通),6盏全灭。当汽车转
弯时,若右转弯(即右转开关接通),右边3盏尾灯从左到右顺序亮
灭,左边3盏全灭;若左转弯(即左转开关接通),左边3盏尾灯从
右到左顺序亮灭,右边3盏全灭。当左右两个开关同时接通时,6盏
尾灯同时明、暗闪烁。
总体框图
时钟脉冲是一个激励信号,给左右两个灯控制模块脉冲。
多路选择器是选择它的有用输出,在这个实验中,它有2个输入,3个输出
当转到left开关时,输出选lfen。当转到right开关时,输出选rten.
当两个都不开时,输出选lR,它是一个清零端
。
左右边控制模块是控制它的输出,使它们的输出依次进行。
灯是起到亮灭的作用。
三、选择器件
(1)
CK起到了给左右两个模块一个脉冲。
(2)
CTRL在这里是主控模块,主要是选择作用,它的输入是两个开关,
输出主要选择哪个开关起到作用。
(3)
LEFTP是一个左灯控制模块,是一个沿时作用,它使3个输出灯依
次亮灭。
(4)
RIGHTP是一个右灯控制模块,也起延时作用,当脉冲到来时,
RIGHTEN为高电平时,输出的三个灯从左到右依次亮灭。
四、功能模块
1、(1)时钟脉冲的VHDL语言
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity ck is
port(clk:in std_logic;
cp:out std_logic);
end ck;
architecture a of ck is
signal cnter:std_logic_vector(7 downto 0);
begin
process(clk)
begin
if clkevent and clk=1then
cnter=cnter+1;
end if;
end process;
cp=cnter(3);
end a;
(2)时钟脉冲的生成符号
CK的功能就是起激励信号的作用,它给左右两灯的控制模块一序列脉冲。
(3)时钟脉冲的功能仿真图
2、(1)多路选择器的VHDL语言
library ieee;
use ieee.std_logic_1164.all;
entity ctrl is
port(left,right:in std_logic;
lfen,rten,lr:out std_logic);
end ctrl;
architecture a of ctrl is
begin
process(left,right)
variable tmp:std_logic_vector(1 downto 0);
begin
tmp:=leftright;
case tmp is
when00=lfen=0;
rten=0;
lr=0;
when01=lfen=0;
rten=1;
lr=0;
when10=lfen=1;
rten=0;
lr=0;
显示全部