微波炉定时控制器的设计(含程序 仿真)eda课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SOPC/EDA综合课程设计报告
设计题目:微波炉控制与设计
设计者:钟鹏
学号:37
班级:测控081
指导老师:王忠锋
完成时间:2011-1-7
目录
第一章微波炉定时控制器的设计方案分析 (3)
1.1 系统设计的要求 (3)
1.2 系统总体功能描述 (3)
1.3 各模块的功能实现 (4)
第二章微波炉定时控制器的设计步骤 (6)
2.1状态控制器的设计 (6)
2.1.1 controllor状态换图及端口图 (6)
2.2数据装载器loader的设计 (7)
2.3烹调计时器counter的设计 (7)
2.3.1烹调计时器的内部组成原理图 (8)
2.4显示译码器YMQ47的设计 (8)
2.5锁存器的设计 (9)
第三章微波炉控制器的VHDL源程序 (10)
3.1各模块的VHDL源程序 (10)
第四章总体原理图 (21)
4.1 总体功能的顶层原理图 (21)
第五章系统功能的仿真验证 (22)
5.1 状态控制电路仿真波形图 (22)
5.2数据装载电路的仿真 (22)
5.3 计时电路仿真 (23)
5.4微波炉控制器显示仿真 (24)
5.5SCQ的仿真图 (24)
5.6总体功能的仿真分析 (25)
结束语 (26)
参考文献 (27)
第一章微波炉定时控制器的设计方案分析
1.1 系统设计的要求
现需设计一个微波炉控制器WBLCONTROLLOR,其外部接口如下图所示。
通过该控制器再配以4个七段数码二极管完成微波炉的定时及信息显示。
各信号的功能及要求如下:
CLK是秒时钟脉冲输入,它接收每秒一个时钟脉冲的节拍信号。
RESET为复位信号,高电平有效,用于芯片的复位功能。
TEST为测试信号,高电平有效,用于测试4个七段数码二极管工作是否正常。
Start为开始加热信号,高电平有效,SET_T信号为定时设置信号,高电平时可以设置定时时间,DATA为定时的时间,cook为加热输出(用指示灯代替),另外四个输出分别表示显示的定时时间的分和秒。
其他功能自行扩展并设计。
1.2 系统总体功能描述
现需设计的微波炉控制器WBLCONTROLLOR的外部接口如图1-1所示,通过该控制器,再配以七段数码二极管完成微波炉的定时信息和信息的显示。
图1-1 WBLCONTROLLOR的端口图
各信号功能及要求如下:
CLK是秒时钟脉冲输入,它接收每秒一个时钟脉冲的节拍信号。
RESET为复位信号,高电平有效,用于芯片的复位功能。
TEST信号是测试信号,高电平有效,用于测试七段数码管工作是否正常。
SET_T是烹调时间设置控制信号,高电平有效。
DATA0是一个16为总线输入信号,输入所设置的时间长短,它由高到低分为4组,每一组是BCD码输入,分别表示分、秒十位、个位的数字,如12分59秒。
START是烹调开始的控制信号,高电平有效。
COOK是烹调进行信号,外接用于控制烹调的继电器开关,高电平时表明烹调已经开始或正在进行,低电平表示烹调结束或没有进行。
MIN_0,MIN_1,SEC_0,SEC_1是四组七位总线信号,分别接4个七段数码管,动态的显示完成烹调所剩的时间及测试状态信息“0000”,烹调完毕的状态信息“DONE”.
该微波炉控制器WBLCONTROLLOR的具体功能要求如下[9]:上电后系统首先处于复位状态。
在工作是首先按SET_T键设置烹调时间,此时系统输入DATA0的数据作为烹调所需的时间,然后系统自动回到复位状态,同时4个七段数码管显示时间信息。
在按START键后系统进入烹调状态。
COOK信号开始为高电平,此时4个七段数码管每隔一秒钟变化一次,用以刷新还剩剩余多少时间结束烹调。
烹调结束后,COOK信号变为低电平,同时4个七段数码管组合在一起显示“DONE”的信息,然后系统回到复位状态。
系统可以通过按RESET键随时回到复位状态。
在复位状态下,按TEST键在4个数码管上会显示“0000”的信息,它可以测试4个七段数码管工作是否正常。
1.3 各模块的功能实现
根据该微波炉定时控制器的设计要求,本系统有四个模块:状态控制模块controllor,数据装载模块loader,烹调计时模块counter,显示译码模块YMQ47,锁存器模块SCQ。
(1)状态控制器模块是控制微波炉工作过程中的状态转换,并发出有关的控制信息,输入信号为CLK,TEST,SET_T,START,TESET,DONE和SEL.输出信号为LD_DONE,LD_test,LD_CLK,PT,WB等。
根据输入的控制信号来完成完成状态转换;LD_DONE指示LOADER装入烹调完毕的状态信息“DONE”的显示驱动信息数据;LD_CLK指示LOADER装入设置的烹饪时间数据;LD_test指示LOADER装入用于测试的数据“0000”以显示驱动信息数据;COOK指示烹调正在进行中,并提示计数器进行减计数,PT和WB是两种状态的选择显示信息。
(2)数据装载器LOADER的功能是根据CONTROLLOR发出的控制信号选择定时时间,测试数据或烹调完成信息的装入。
当LD_DONE为高电平时,输出烹调完毕的信息数据;LD_CLK为高电平时,输出设置的烹饪时间数据;LD_test为高电平是,输出测试的数据。
输出信号LOAD用于指示counter将处于数据装入状态。
(3)计时器counter的功能是负责烹调过程中的时间递减计数,并提供烹调完成时的状态信号供CONTROLLOR产生烹调完成信号。
LOAD为高电平时完成装入功能,COOK为高电平时执行逆计数功能。
输出DONE指示烹调完成。
MIN_1,MIN_0,SEC_1,SEC_0为完成烹调所剩的时间及测试状信息“0000”,烹调完毕的状态信息“DONE”的BCD码信息。
(4)显示译码器YMQ47的功能是负责将各种显示信息的BCD码转换成七段数码管显示的驱动信息编码。
需要译码的信息有:数字0-9,字母D,O,N,E。
1-2YMQ47原理图
第二章微波炉定时控制器的设计步骤
2.1状态控制器的设计
状态控制器的功能是控制微波炉工作过程中的状态转换,并发出有关的控制信息,因此可以用一个状态机来实现。
经过对微波炉工作过程中的状态转换条件及输出信号进行分析,我们可以得到其状态转换图如图2-1所示。
2.1.1 controllor状态换图及端口图
图2-1 CONTROLLOR的状态转换图
说明:SET_T烹调时间设置状态,LAMP_TEST数码管测试状态;DONE_MSG完成信息显示状态,TIMER减数定时状态。
CONTROLLOR 的端口图如下图所示:
图2-2 CONTROLLOR 的端口图
2.2数据装载器loader 的设计
LOADER 的输入、输出端口如图2-3所示,根据其应完成的逻辑功能,它本质上就是一个三选一数据选择器。
数据选择是指经过选择,把多个通道的数据传送到唯一的公共数据通道上去。
实现数据选择功能的逻辑电路称为数据选择器。
它的作用相当于多个输入的单刀多掷开关。
数据选择器的电路结构一般由与或门阵列组成,也有用传输门开关和门电路混合而成的。
数据选择器的应用很广,它可以作二进制比较器、二进制发生器、图形发生电路、顺序选择电路。
本设计采用一个进程来完成,但由于三个被选择的数据只有一个来自输入端口,因此另两个被选择的数据则通过在进程的说明部分定义两个常数来产生。
由于用于显示“8888”的常数ALL 8需分解成4个8,分别经过四个4-7译码器译码后才是真正的显示驱动信息编码,因此该常数应是4个分段的4位BCD 码,故应设为“1000100010001000”。
同理,显示“donE”的常数DONE 可设为“1010101111001101”,其中D,O,N,E 的B CD 码分别为:“1010”、“1011”、“1100”
、“1101”。
该模块主要实现对状态控制器发出的状态信息的相应数据的装载功能。
图2-3 loader 的端口图
2.3烹调计时器counter的设计
计数是一种最简单基本的运算,计数器就是实现这种运算的逻辑电路。
计数器在数字系统中主要是对脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功能。
计数器是由基本的计数单元和一些控制门所组成,计数单元则由一系列具有存储信息功能的各类触发器构成,这些触发器有RS触发器、T 触发器、D触发器及JK触发器等[10]。
计数器在数字系统中应用广泛,如在电子计算机的控制器中对指令地址进行计数,以便顺序取出下一条指令,在运算器中作乘法、除法运算时记下加法、减法次数,又如在数字仪器中对脉冲的计数等等。
计数器按计数进制不同,可分为二进制计数器、十进制计数器、其他进制计数器和可变进制计数器,若按计数单元中各触发器所接收计数脉冲和翻转顺序或计数功能来划分,则有异步计数器和同步计数器两大类,以及加法计数器、减法计数器、加/减计数器等,如按预置和清除方式来分,则有并行预置、直接预置、异步清除和同步清除等差别,按权码来分,则有“8421”码,“5421”码、余“3”码等计数器,按集成度来分,有单、双位计数器等等[10]。
烹调计时器counter为减数计数器,其最大计时时间为59分59秒,因此我们可以用两个键计数十进制计数器cnt10和两个减计数六进制cnt6级联构成。
2.3.1烹调计时器的内部组成原理图
烹调计时器counter的内部组成原理图如图2-4所示。
图2-4 counter的内部组成原理图
说明:CLK为时钟输入信号,LOAD为装载控制信号,COOK为使能信号,DATA[15.0]为数据输入信号,SEC_1,SEC_0,MIN_1,MIN_0分别为妙,分的十位个位的输出,DONE为烹调状态的信息指示信号。
当使能段信号有效,且时钟上升沿来时计数器根据装载数据的信息装入数据,并完成相应的功能。
2.4显示译码器YMQ47的设计
本显示译码器不但要对数字0-9进行显示译码,还要对字母D,O,N,E进行显示译码。
其译码对照表如表2-1所示,
表2-1 YMQ47的译码对照表[
2.5锁存器的设计
锁存器SCQ的输入、输出端口如图2-5所示
图2-5 SCQ的端口图
此单元主要用于完成定时时间到蜂鸣报警信息的实现,当时钟上升沿到来且清零信号无效时,同时COOK信号开始有高电平变为低电平时,输出信号则是蜂鸣器报警。
其实质就是一个D触发器的功能。
第三章微波炉控制器的VHDL源程序
3.1各模块的VHDL源程序
下面是各模块的源程序:
LIBRARY IEEE;--定义库文件
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_ARITH.ALL;
ENTITY controllor IS
PORT (RESET:IN STD_LOGIC;--复位信号
SET_T:IN STD_LOGIC;--时间设置信号
START:IN STD_LOGIC;--开始烹调信号
TEST:IN STD_LOGIC;--显示电路测试信号
CLK:IN STD_LOGIC;--时钟信号
DONE:IN STD_LOGIC;--完成信号
SEL:IN STD_LOGIC;
COOK:OUT STD_LOGIC;
LD_test:OUT STD_LOGIC;
LD_CLK:OUT STD_LOGIC;
LD_DONE:OUT STD_LOGIC;
PT:OUT STD_LOGIC;
WB:OUT STD_LOGIC);
END ENTITY controllor;
ARCHITECTURE ART OF controllor IS
TYPE STATE_TYPE IS (IDLE,LAMP_TEST,SET_CLOCK,TIMER,DONE_MSG);--状态 SIGNAL NXT_STATE ,CURR_STATE:STATE_TYPE;
BEGIN
PROCESS(CLK,RESET) IS
BEGIN
IF RESET ='1' THEN --清零
IF SEL='0'THEN
PT<='1';WB<='0';
ELSE PT<='0';WB<='1' ;
END IF;
CURR_STATE<=IDLE;
ELSIF CLK 'EVENT AND CLK='1' THEN
CURR_STATE<=NXT_STATE;
END IF;
END PROCESS;
PROCESS(CLK, CURR_STATE,SET_T,START,TEST,DONE) IS
BEGIN
NXT_STATE<=IDLE;
LD_test<='0';
LD_DONE<='0';
LD_CLK<='0';
COOK<='0';
CASE CURR_STATE IS
WHEN LAMP_TEST=>LD_test<='1';COOK<='0';--译码显示测试状态
WHEN SET_CLOCK=>LD_CLK<='1';COOK<='0';--烹调时间测试状态
WHEN DONE_MSG=>LD_DONE<='1';COOK<='0';--完成信息显示状态
WHEN IDLE=>
IF (TEST='1') THEN --初始状态
NXT_STATE<=LAMP_TEST;
LD_test<='1';
ELSIF SET_T='1' THEN
NXT_STATE<=SET_CLOCK;
LD_CLK<='1';
ELSIF ((START='1')AND(DONE='0')) THEN
NXT_STATE<=TIMER;
COOK<='1';
END IF;
WHEN TIMER=>
IF DONE='1' THEN --减法计数定时状态
NXT_STATE<=DONE_MSG;
LD_DONE<='1';
ELSE
NXT_STATE<=TIMER;
COOK<='1';
END IF;
END CASE;
END PROCESS;
END ARCHITECTURE ART;
数据装载电路的VHDL实现
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
entity loader is
port(
datain:in std_logic_vector(15 downto 0);
ld_test:in std_logic;
ld_clk:in std_logic;
ld_done: in std_logic;
dataout:out std_logic_vector(15 downto 0);
load:out std_logic
);
end loader;
architecture rtl of loader is
begin
process(datain,ld_test,ld_clk,ld_done)
constant alls: std_logic_vector(15 downto 0)--测试信息 :="1000100010001000";
constant done:std_logic_vector(15 downto 0)--烹调完成信息 :="1010101111001101";
variable temp:std_logic_vector(2 downto 0);
begin
load<=ld_test or ld_done or ld_clk;
temp:=ld_test & ld_done &ld_clk;
case temp is
when "100"=> --测试
dataout<=alls;
when "010"=> --烹调完成
dataout<=done;
when "001"=> --设置时间
dataout<=datain;
when others=>null;
end case ;
end process;
end rtl;
计时电路的VHDL实现
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity cnt10 is
port(
clk:in std_logic;
load:in std_logic;
en:in std_logic;
datain:in std_logic_vector(3 downto 0); q:out std_logic_vector(3 downto 0);
carry_out:out std_logic
);
end cnt10;
architecture rtl of cnt10 is
signal tmp:std_logic_vector(3 downto 0);
begin
process(clk,load,en )
begin
if load='1'then
tmp<=datain;
elsif clk'event and clk='1'then
if en='1'then
if tmp="0000"then
tmp<="1001";
else
tmp<=tmp-'1';
end if ;
end if ;
end if;
end process;
process(clk,tmp)
begin
if clk'event and clk='1'then
if tmp="0000"then
carry_out<='1';
else
carry_out<='0';
end if;
end if;
end process;
q<=tmp;
end rtl;
---六进制减法计数器
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity cnt6 is
port(
clk:in std_logic;
load:in std_logic;
en:in std_logic;
datain:in std_logic_vector(3 downto 0); q:out std_logic_vector(3 downto 0);
carry_out:out std_logic
);
end cnt6;
architecture rtl of cnt6 is
signal tmp:std_logic_vector(3 downto 0 ); begin
process(clk,load,en )
begin
if load='1'then
tmp<=datain;
elsif clk'event and clk='1'then
if en='1'then
if tmp="0000"then
tmp<="0101";
else
tmp<=tmp-'1';
end if ;
end if ;
end if;
end process;
process(clk,tmp)
begin
if clk'event and clk ='1'then if tmp="0000" then
carry_out<='1';
else
carry_out<='0';
end if;
end if;
end process;
q<=tmp;
end rtl;
计时电路模块设计
library ieee;
use ieee.std_logic_1164.all;
entity counter is
port (
cook:in std_logic;
load:in std_logic;
clk:in std_logic;
data:in std_logic_vector(15 downto 0);
sec0:out std_logic_vector(3 downto 0);
sec1:out std_logic_vector(3 downto 0);
min0:out std_logic_vector(3 downto 0); min1:out std_logic_vector(3 downto 0); done:out std_logic
);
end counter;
architecture rtl of counter is
---定义十进制和六进制计数器电路模块
component cnt10 is
port(
clk:in std_logic;
load:in std_logic;
en:in std_logic;
datain:in std_logic_vector(3 downto 0);
q:out std_logic_vector(3 downto 0);
carry_out:out std_logic
);
end component cnt10;
component cnt6 is
port(
clk:in std_logic;
load:in std_logic;
en:in std_logic;
datain:in std_logic_vector(3 downto 0);
q:out std_logic_vector(3 downto 0);
carry_out:out std_logic
);
end component cnt6;
signal clk0:std_logic;
signal s1:std_logic;
signal s2:std_logic;
signal s3:std_logic;
begin
--元件例化
U1:cnt10 port map(clk,load,cook,data(3 downto 0),sec0,s0); U2:cnt6 port map(s0,load,cook,data(7 downto 4),sec1,s1); U3:cnt10 port map(s1,load,cook,data(11 downto 8),min0,s2); U4:cnt6 port map(s2,load,cook,data(15 downto 12),min1,s3); done<=s0 and s1 and s2 and s3;
end rtl;
顶层模块的VHDL实现
library ieee;
use ieee.std_logic_1164.all;
entity top is
port(
data:in std_logic_vector(15 downto 0);
reset:in std_logic;
set_t:in std_logic;
start:in std_logic;
test:in std_logic;
clk:in std_logic;
cook:out std_logic;
sec0:out std_logic_vector(3 downto 0);
sec1:out std_logic_vector(3 downto 0);
min0:out std_logic_vector(3 downto 0);
min1:out std_logic_vector(3 downto 0)
);
end top;
architecture rtl of top is
---定义状态控制电路模块
component controllor is
port(
reset: in std_logic;
start:in std_logic;
test:in std_logic;
clk:in std_logic;
done:in std_logic;
cook:out std_logic;
ld_test:out std_logic;
ld_clk:out std_logic;
ld_done:out std_logic
);
end component controllor;
component loader is
---定义数据装载电路模块
port(
datain:in std_logic_vector(15 downto 0); ld_test:in std_logic;
ld_clk:in std_logic;
ld_done:in std_logic;
dataout:out std_logic_vector(15 downto 0); load:out std_logic
);
end component loader;
---定义计时电路模块
component counter is
port(
cook:in std_logic;
load:in std_logic;
clk:in std_logic;
data:in std_logic_vector(15 downto 0);
sec0:out std_logic_vector(3 downto 0);
sec1:out std_logic_vector(3 downto 0);
min0:out std_logic_vector(3 downto 0);
min1:out std_logic_vector(3 downto 0);
done:out std_logic
);
end component counter;
signal cook_tmp:std_logic;
signal test_tmp:std_logic;
signal clk_tmp:std_logic;
signal done_tmp:std_logic;
signal load_tmp:std_logic;
signal done:std_logic;
signal data_tmp:std_logic_vector(15 downto 0);
begin
cook<=cook_tmp;
---电路模块例化
U1:controllor port map(reset,set_t,start,test,clk,done,cook_tmp,test_tmp,clk_tmp,done_tm p);
U2:loader port map(data,test_tmp,clk_tmp,done_tmp,data_tmp,load_tmp);
U3:counter port map(cook_tmp,load_tmp,clk,data_tmp,sec0,sec1,min0,min1,done);
end rtl;
显示译码YMQ47的VHDL实现
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY YMQ47 IS
PORT(AIN4:IN STD_LOGIC_VECTOR(3 DOWNTO 0);
DOUT7:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));
END ENTITY YMQ47;
ARCHITECTURE ART OF YMQ47 IS
BEGIN
PROCESS(AIN4)
BEGIN
CASE AIN4 IS
WHEN "0000"=>DOUT7<="0111111";
WHEN "0001"=>DOUT7<="0000110";
WHEN "0010"=>DOUT7<="1011011";
WHEN "0011"=>DOUT7<="1001111";
WHEN "0100"=>DOUT7<="1100110";
WHEN "0101"=>DOUT7<="1101101";
WHEN "0110"=>DOUT7<="1111101";
WHEN "0111"=>DOUT7<="0000111";
WHEN "1000"=>DOUT7<="1111111";
WHEN "1001"=>DOUT7<="1101111";
WHEN "1010"=>DOUT7<="1011110";
WHEN "1011"=>DOUT7<="1011100";
WHEN "1100"=>DOUT7<="1010100";
WHEN "1101"=>DOUT7<="1111001";
WHEN OTHERS =>DOUT7<="0000000";
END CASE;
END PROCESS;
END ARCHITECTURE ART; ---------------YMQ47的源程序锁存SCQ的VHDL实现
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY SCQ IS
port(
clk:in std_logic;
done:in std_logic;
clr:in std_logic;
arlm: out std_logic);
end entity;
ARCHITECTURE ART OF SCQ IS
begin
process( clk,done,clr)
begin
if (done='1' and clr='0')
then arlm<='1';
else arlm<='0';
end if ;
end process;
end;
第四章总体原理图
4.1 总体功能的顶层原理图
本顶层设计采用原理图输入的方式进行设计,本框图有五个部分组成。
然后对此图进行编译仿真最终实现该微波炉定时控制器的各种功能。
图4-1顶层原理图
该顶层原理图由以上的五个模块组成,其中输入端的控制模块是主要功能的实现控制部分,由它发出控制信息来提示下面各模块完成什么功能。
其他模块则根据控制信息成数据的装载(装入8888、DONE、时间数据)、计时的递减等功能。
输出端则主要由译码器实现信息的显示功能,并且指示控制器处于那种工作状态下。
第五章系统功能的仿真验证
5.1 状态控制电路仿真波形图
图5-1 controllor显示的仿真图
上图中,当测试信号TEST为高电平有效时,测试输出信号为高电平;否则,当时间设置信号SET_T为高电平,对应的指示信号LD_CLK输出高电平;当烹饪开始信号START信号为高电平时,对应输出COOK为高电平;当复位信号RESET为高电平时,系统复位清零,恢复初始状态。
仿真结果符合模块设计的要求。
5.2数据装载电路的仿真
图5-2数据装载电路仿真波形图
该模块本质即多路选择译码电路。
当LD_CLK、LD_TEST、LD_DONE三路信号中有且仅有一路信号高电平有效时,选择其相应的值作为输出。
5.3 计时电路仿真
图5-3计时电路仿真波形图
图中LOAD为高电平时读取信号DATA的值,当COOK信号为高电平时,对DATA的值进行减法计数,并在每个时钟周期都输出减法计数器的当前值。
仿真结果与预先设定的电路功能相吻合。
5.4微波炉控制器显示仿真
图5-4微波炉控制器显示测试功能仿真
当复位信号有效,微波炉控制器处于初始状态时,若显示管测试信号有效,则显示管输出全8,以示正常工。
5.5SCQ的仿真图
图5-5 SCQ的仿真图
图5-5为SCQ的仿真图,该仿真图说明了当烹调计时完成时即DONE的信号变为高电平时,SCQ输出的ARLM信号变为高电平,即指示工作的结束。
5.6总体功能的仿真分析
图5-6 总功能显示的仿真图
图5-6是顶层原理图的仿真结果。
由该顶层原理图的仿真结果可以看出,此设计基本实现了所要求的各种功能定时,复位,状态切换等功能。
结束语
“提出一个问题往往比解决一个问题更重要,因为解决问题也许仅是一个数学上或实验上的技能而已。
而提出新的问题、新的可能性,从新的角度去看旧的问题,都需要有创造性的想象力,而且标志着科学的真正进步。
”——爱因斯坦
近来进行了一个多月的毕业设计任务,通过这段时间的学习培养了我独立思考的解决问题的能力,同时也提高了本身的动手实践的能力,而且在老师和同学的帮助下,认真查看问题的所在并且努力利用一切方法来解决实验中所出现的问题,同时培养了解决问题的能力,初步学会了设计中个所用到的软件操作,我想这将会有利于我今后的学习和工作。
这个项目到目前为已经基本完成,单我知道这个设计仍有不足之处需要补充创新的,例如可以给控制器加上个预置数的功能或分频器能够使系统性能更稳定。
她给我们那么深的希望,让我们为了她去努力奋斗学习,让我们值得去回味以前为了这个所做的一切努力。
所有这两个月的心血都在这几十页纸上,我希望在这几十页纸上,书写了我一个完整的大学和我那美好的青春时光,书写了这样一个结束,同时也书写了另外的一个开始!
参考文献
[1] 刘欲晓方强黄宛宁《EDA技术与VHDL电路开发应用实践》电子工业出版社
[2] 《EDA技术与VHDL 》第三版潘松黄继业清华大学出版社
[3] 《基于FPFA的数字电路系统设计》崔葛瑾沈利芳李伟民西安电子科技大学出版社
[4] 《VHDL电路设计》清华大学出版社雷伏容。