文档库 最新最全的文档下载
当前位置:文档库 › vhdl流水灯课程设计报告

vhdl流水灯课程设计报告

vhdl流水灯课程设计报告
vhdl流水灯课程设计报告

院系:

姓名:

学号:

课程设计名称:

指导老师:

时间:

摘要

VHDL的特点

应用VHDL进行系统设计,有以下几方面的特点。

(一)功能强大

VHDL具有功能强大的语言结构。它可以用明确的代码描述复杂的控制逻辑设计。并且具有多层次的设计描述功能,支持设计库和可重复使用的元件生成。VHDL是一种设计、仿真和综合的标准硬件描述语言。

(二)可移植性

VHDL语言是一个标准语言,其设计描述可以为不同的EDA工具支持。它可以从一个仿真工具移植到另一个仿真工具,从一个综合工具移植到另一个综合工具,从一个工作平台移植到另一个工作平台。此外,通过更换库再重新综合很容易移植为ASIC设计。

(三)独立性

VHDL的硬件描述与具体的工艺技术和硬件结构无关。设计者可以不懂硬件的结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。程序设计的硬件目标器件有广阔的选择范围,可以是各系列的CPLD、FPGA及各种门阵列器件。

(四)可操作性

由于VHDL具有类属描述语句和子程序调用等功能,对于已完成的设计,在不改变源程序的条件下,只需改变端口类属参量或函数,就能轻易地改变设计的规模和结构。

(五)灵活性

VHDL最初是作为一种仿真标准格式出现的,有着丰富的仿真语句和库函数。使其在任何大系统的设计中,随时可对设计进行仿真模拟。所以,即使在远离门级的高层次(即使设计尚未完成时),设计者就能够对整个工程设计的结构和功能的可行性进行查验,并做出决策。VHDL的设计结构

VHDL描述数字电路系统设计的行为、功能、输入和输出。它在语法上与现代编程语言相似,但包含了许多与硬件有特殊关系的结构。

VHDL将一个设计称为一个实体Entity(元件、电路或者系统),并且将它分成外部的可见部分(实体名、连接)和内部的隐藏部分(实体算法、实现)。当定义了一个设计的实体之后,其他实体可以利用该实体,也可以开发一个实体库。所以,内部和外部的概念对系统设计的VHDL是十分重要的。

外部的实体名或连接由实体声明Entity来描述。而内部的实体算法或实现则由结构体Architecture来描述。结构体可以包含相连的多个进程process或者组建component等其他并行结构。需要说明的是,它们在硬件中都是并行运行的。

VHDL的设计步骤

采用VHDL的系统设计,一般有以下6个步骤。

1)要求的功能模块划分;

2)VHDL的设计描述(设计输入);

3)代码仿真模拟(前仿真);

4)计综合、优化和布局布线;

5)布局布线后的仿真模拟(后仿真);

6)设计的实现(下载到目标器件)。

[实验说明]

该流水灯除了输入有:时钟端、使能端和清零端,输出为8个led指示灯。清零端为低电平时回到最初始状态,输出为O1灯亮,为高电平时无作用;使能端低电平时流水灯停止,高电平时流水灯继续流动;时钟端为系统时钟输入,要求8个led指示灯每秒变化一次,向右流动,变化顺序依次为O1灯亮→O2灯亮→O3灯亮→ O4灯亮→ O5灯亮→ O6灯亮→ O7灯亮→返回O1。

电路逻辑功能实现后,可将该逻辑功能下载到CPLD中。注意选择:清零端选1脚,使能端选拨码开关,时钟端选83脚、输出线8根(接发光二极管指示灯);测试时根据输入信

[实验要求]

1用VHDL语言实现流水灯

2设计仿真文件,进行软件验证

3通过下载线下载到实验板上进行验证

4灯有两种模式每种模式有四种变化。

5第一种模式下灯的花色循环变化不能控制,第二种情况下花色可以控制并且变化间有声音。

流水灯设计

1、分频模块的VHDL设计:

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity light is

PORT( CLK_IN: IN STD_LOGIC;--输入时钟信号

CLK_OUT: OUT STD_LOGIC;--分频后的输出时钟信号

);

end light;

architecture Behavioral of light is

signalcont: STD_logic_vector(1 downto 0);

begin

process(CLK_IN)

BEGIN

IF RISING_EDGE(CLK_IN) THEN

IF CONT="11" THEN

CONT<="00";

CLK_OUT<='1';

ELSE CONT<=CONT+'1';

CLK_OUT='0';

END IF;

END IF;

END PROCESS;

end Behavioral;

2、流水灯从左至右连续显示

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity light2 is

PORT(CLK :IN STD_LOGIC;--分频后的时钟信号

EN :IN STD_LOGIC;--使能控制信号

M :OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--控制8个灯的输出信号 );

end light2;

architecture Behavioral of light2 is

SIGNAL SEL : STD_LOGIC_VECTOR(2 DOWNTO 0);

begin

PROCESS(EN,CLK,SEL)

BEGIN

IF RISING_EDGE(CLK) THEN

IF EN='1' THEN

IF SEL="111" THEN

SEL<="000";

ELSE

SEL<=SEL+'1';

END IF;

END IF;

END IF;

CASE SEL IS

WHEN "000" =>M<="10000000";

WHEN "001" =>M<="01000000";

WHEN "010" =>M<="00100000";

WHEN "011" => M<="00010000";

WHEN "100" => M<="00001000";

WHEN "101" =>M<="00000100";

WHEN "110" =>M<="00000010";

WHEN "111" => M<="00000001";

WHEN OTHERS =>NULL;

END CASE;

END PROCESS;

end Behavioral;

3、流水灯从右到左连续显示:

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity light3 is

PORT(CLK :IN STD_LOGIC;--分频后的时钟信号

EN :IN STD_LOGIC;--使能控制信号

N :OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--控制8个灯的输出信号 );

end light3;

architecture Behavioral of light3 is

SIGNAL SEL : STD_LOGIC_VECTOR(2 DOWNTO 0);

begin

PROCESS(EN,CLK,SEL)

BEGIN

IF RISING_EDGE(CLK) THEN

IF EN='1' THEN

IF SEL="111" THEN

SEL<="000";

SEL<=SEL+'1';

END IF;

END IF;

END IF;

CASE SEL IS

WHEN "000" =>N<="00000001";

WHEN "001" =>N<="00000010";

WHEN "010" =>N<="00000100";

WHEN "011" =>N<="00001000";

WHEN "100" =>N<="00010000";

WHEN "101" =>N<="00100000";

WHEN "110" =>N<="01000000";

WHEN "111" =>N<="10000000";

WHEN OTHERS =>NULL;

END CASE;

END PROCESS;

end Behavioral;

4、流水灯从两边向中间显示,然后由中间向两边显示:

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity light4 is

PORT(CLK :IN STD_LOGIC;--分频后的时钟信号

EN :IN STD_LOGIC;--使能控制信号

L :OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--控制8个灯的输出信号 );

end light4;

architecture Behavioral of light4 is

SIGNAL SEL : STD_LOGIC_VECTOR(2 DOWNTO 0);

begin

PROCESS(EN,CLK,SEL)

BEGIN

IF RISING_EDGE(CLK) THEN

IF EN='1' THEN

IF SEL="111" THEN

SEL<="000";

ELSE

SEL<=SEL+'1';

END IF;

END IF;

CASE SEL IS

WHEN "000" =>L<="10000001";

WHEN "001" =>L<="01000010";

WHEN "010" =>L<="00100100";

WHEN "011" =>L<="00011000";

WHEN "100" =>L<="00100100";

WHEN "101" =>L<="01000010";

WHEN "110" =>L<="10000001";

WHEN "111" =>L<="11111111";

WHEN OTHERS =>NULL;

END CASE;

END PROCESS;

end Behavioral;

5、流水灯从左至右每次显示两个灯:

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity light5 is

PORT(CLK :IN STD_LOGIC;--分频后的时钟信号

EN :IN STD_LOGIC;--使能控制信号

Q :OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--控制8个灯的输出信号 );

end light5;

architecture Behavioral of light5 is

SIGNAL SEL : STD_LOGIC_VECTOR(2 DOWNTO 0);

begin

PROCESS(EN,CLK,SEL)

BEGIN

IF RISING_EDGE(CLK) THEN

IF EN='1' THEN

IF SEL="111" THEN

SEL<="000";

ELSE

SEL<=SEL+'1';

END IF;

END IF;

END IF;

CASE SEL IS

WHEN "000" => Q <="10100000";

WHEN "001" => Q <="01010000";

WHEN "010" => Q <="00101000";

WHEN "011" => Q <="00010100";

WHEN "100" => Q <="00001010";

WHEN "101" => Q <="00000101";

WHEN "110" => Q <="00001010";

WHEN "111" => Q <="00001010";

WHEN OTHERS =>NULL;

END CASE;

END PROCESS;

end Behavioral;

6、扫描模块程序

libraryieee;

use ieee.std_logic_1164.all;

useieee.std_logic_unsigned.all; useieee.std_logic_arith.all;

entity SELTIME is

port(

daout:outstd_logic_vector(7downto 0); sel:instd_logic_vector(1downto 0)

);

end SELTIME;

architecture fun of SELTIME is signalcount:std_logic_vector(1downto 0); begin

sel<=count;

process(sel)

begin

case count is

when"00"=>daout<=M;

when"01"=>daout<=N;

when"10"=>daout<=L;

when"11"=>daout<=Q;

when others =>null;

end case;

end process;

end fun;

VHDL与数字系统课程设计

课程设计报告 实践课题:VHDL与数字系统课程设计 学生:XXX 指导老师:XXX、XXX 系别:电子信息与电气工程系 专业:电子科学与技术 班级:XXX 学号:XXX

一、设计任务 用VHDL设计一个简单的处理器,并完成相关的仿真测试。 .设计要求: 图1是一个处理器的原理图,它包含了一定数量的寄存器、一个复用器、一个加法/减法器(Addsub),一个计数器和一个控制单元。 图1 简单处理器的电路图 数据传输实现过程:16位数据从DIN输入到系统中,可以通过复用器分配给R0~R7和A,复用器也允许数据从一个寄存器传通过Bus送到另外一个寄存器。 加法和减法的实现过程:复用器先将一个数据通过总线放到寄存器A中,然后将另一个数据放到总线上,加法/减法器对这两个数据进行运算,运算结果存入寄存器G中,G中的数据又可根据要求通过复用器转存到其他寄存器中。 1)Rx ←[Ry] :将寄存器Ry中的内容复制到Rx; 2)Mvi Rx,#D :将立即数存入寄存器Rx中去。 所有指令都按9位编码(取自DIN的高9位)存储在指令存储器IR中,编编码规则为IIIXXXYYY,III表示指令,XXX表示Rx寄存器,YYY表示Ry寄存器。立即数#D是在mvi指令存储到IR中之后,通过16位DIN输入

的。 有一些指令,如加法指令和减法指令,需要在总线上多次传输数据,因此需要多个时钟周期才能完成。控制单元使用了一个两位计数器来区分这些指令执行的每一个阶段。当Run信号置位时,处理器开始执行DIN输 时间 指令 T0T1T2T3 (mv):I0 (mvi):I1 (add):I2 (sub):I3 IR in IR in IR in IR in RY out,RX in,Done DIN out,RX in,Done RX out,A in RX out,A in ---- ---- RY out,G in,Addsub RY out,G in,Addsub ---- ---- G out,RX in,Done G out,RX in,Done 二、实现功能说明 2.1 mv Rx,Ry 实现的功能:将寄存器Rx的值赋给寄存器Ry(以mv R0, R5为例) (1 )计数器为“00”时,指令寄存器的置位控制信号输入端IRin=1有效,将DIN输入的数据的高9位锁存。 置位的控制信号如图3加粗黑线所示。 图3 (2)计数器为“01”时,首先控制单元根据设计器为“00”时输入的指令,向复用器发出选通控制信号,复用器根据该控制信号让R5的值输出到总线上,然后控制单元控制寄存器R0将总线上的值锁存,完成整个寄存器对寄存器的赋值过程。置位的控制信号和数据流如图4加粗黑线所示。 图4

花样流水灯实验报告

黄淮学院信息工程学院 单片机原理及应用课程设计性实验报告

五、硬件电路设计 根据设计任务,首先进行系统硬件的设计。其硬件原理图由LED显示电路和单片机最小系统组成,如图所示,其中包括时钟电路采用部时钟方式,复位电路采用上电自动复位。由于单片机的I/O口的高电平驱动能力只有微安级,而灌电流可以达到3毫安以上,因此采用低电平驱动。P1、P2、P3分别控制8个led灯。 六、软件程序设计 1、软件设计思路 如果通过上图所示电路图完成实验要求,通过数组,分别同时控P0、P1、P2分别控制8个led灯,从而协调控制24个灯实现花样流水灯效果。 开始 编写数组 主循环 逐个点亮 24灯同时闪烁 逐个熄灭

P3=table1[i]; delayms(500); } shan();//全部闪烁 for(i=0;i<8;i++)//逐个熄灭{ P3=table2[i]; delayms(500); } for(i=0;i<8;i++) { P1=table3[i]; delayms(500); } for(i=0;i<8;i++) { P0=table2[i]; delayms(500); } } } void delayms (uintt) { uint x,y; for(x=t; x>0;x--) for(y=50;y>0;y--); } 七、软硬件仿真调试分析 1、仿真调试结果

图片 1 逐个点亮图片 2 24灯闪烁 图片 3 逐个熄灭 2、性能测试及结果分析 通过仿真结果发现通过上述系统可以实现实验要求,24个灯逐个点亮,24个灯全亮后,24个灯一起闪烁,闪烁5次后,然后24个灯逐个熄灭。由此证明系统满足实验要求。 八、项目总结 在本次花样流水灯试验中,使用循环程序、数组语句实现了实验要求,设计过程中遇到了很多的问题,但经过努力,最终设计出了合理的解决方案。通过此次实验,对多个led灯的控制能力进一步得到提升。 九、项目设计报告成绩 实验报告成绩: 指导教师签字: 年月日

EDA课程设计---流水灯设计

EDA课程设计流水灯设计

目录 一、摘要··3 二、流水灯设计目的··4 三、流水灯设计流程··4 四、流水灯设计程序··5 五、流水灯设计管脚分配··7 六、功能仿真图··8 七、原理图波形图··9 八、设计注意事项··10

九、课程设计总结··11 十、参考文献··12 十一、评分表··13 一、摘要 随着EDA技术发展和应用领域的扩大与深入,EDA技术在电子信息、通讯、

自动控制及计算机应用等领域的重要性突出。随着技术市场与人才市场对EDA 的需求不断提高,产品的市场需求和技术市场的要求也必然会反映到教学领域和科研领域中来。因此学好EDA技术对我们有很大的益处。EDA是指以计算机为工具,在EDA软件平台上,根据设计社描述的源文件(原理图文件、硬件描述语言文件或波形图文件),自动完成系统的设计,包括编译、仿真、优化、综合、适配(或布局布线)以及下载。 流水灯是一串按一定的规律像流水一样连续闪亮,流水灯控制是可编程控制器的一个应用,其控制思想在工业控制技术领域也同样适用。流水灯控制可用多种方法实现,但对现代可编程控制器而言,基于EDA技术的流水灯设计也是很普遍的。 课程设计主要的目的是通过某一电路的综合设计,了解一般电路综合设计过程、设计要求、应完成的工作内容和具体的设计方法、通过设计也有助于复习、巩固以往的学习内容、达到灵活应用的目的。在设计完成后,还要将设计的电路进行安装、调试以加强学生的动手能力。在此过程中培养从事设计工作的整体观念。 课程设计应强调以能力培养为主,在独立完成设计及制作任务同时注意多方面能力的培养与提高,主要包括以下方面: ·独立工作能力和创造力。 ·综合运用专业及基础知识,解决实际工程技术问题的能力。 ·查阅图书资料、产品手册和各种工具书的能力。 ·写技术报告和编制技术资料的能力。 ·实际动手能力。

单片机流水灯课程设计

单片机流水灯课程 设计

基于AT89C51单片机的流水灯 1 引言 1.1 课题简介 单片机全称叫单片微型计算机(Single Chip Microcomputer),是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。 当前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:在智能仪器仪表上的应用,例如精密的测量设备;在工业控制中的应用,用单片机能够构成形式多样的控制系统、数据采集系统,例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算

机联网构成二级控制系统等;在家用电器中的应用可从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。单片机在医用设备领域中的应用,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等;在各种大型电器中的模块化应用,如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原理。 本设计着重在于分析计算器软件和开发过程中的环节和步骤,并从实践经验出发对计算器设计做了详细的分析和研究。本系统就是充分利用了8051芯片的I/O引脚。系统以采用MCS-51系列单片机Intel8051为中心器件来设计LED流水灯系统,实现8个LED霓虹灯的左、右循环显示,并实现循环的速度可调。 1.2 设计目的 (1) 学习基本理论在实践中综合运用的初步经验,掌握电路设计的基本方法、设计步骤,培养综合设计与调试能力。 (2) 掌握汇编语言程序设计方法。 (3) 培养实践技能,提高分析和解决实际问题的能力。 1.3 设计任务及要求 (1) 彩灯用8个发光二极管代替。 (2) 电路具有控制彩灯点亮右移、左移、全亮及全灭等功能。

VHDL语言与EDA课程设计

湖南人文科技学院 课程设计报告课程名称: VHDL语言与EDA课程设计 ~ 设计题目:出租车自动计价器设计 系别: 专业: 班级: 学生姓名: 学号: 起止日期: 2011年6月13日~2011年6月26日 $ 指导教师: 教研室主任:

摘要 随着我国社会经济的全面发展,各大中小城市的出租车营运事业发展迅速,出租车已经成为人们日常出行选择较为普遍的交通工具。出租车计价器是出租车营运收费的专用智能化仪表,是出租车市场规范化、标准化以及减少司机与乘客之间发生纠纷的重要设备。一种功能完备、简单易用、计量准确的出租车计价器是加强出租车行业管理、提高服务质量的必备品。根据预定的设计要求和设计思路,我们使用VHDL硬件描述语言设计了一个实际的基于Altera FPGA芯片的出租车自动计价器系统,介绍了该系统的电路结构和程序设计。通过在软件中编译和下载测试,得到了仿真波形和关键的设计结果。经过在实验箱上进行硬件测试,证明该出租车计价系统具有实用出租车计价器的基本功能,如能进一步完善,将可以实用化和市场化。 关键词:出租车自动计价器;VHDL; FPGA ;

目录 设计要求 (1) 1、方案论证与对比 (1) 方案一 (1) 方案二 (2) 两种方案的对比 (2) 2、实验步骤和设计过程 (2) 计程模块 (2) 等待计时模块 (2) 计费模块 (3) 3、调试与操作说明 (3) 中的VHDL程序 (3) 程序的编译与及仿真波形 (6) 程序的下载与功能的测试 (7) 4、课程设计心得体会 (9) 5、元器件及仪器设备明细 (10) 6、参考文献 (11) 7、致谢 (12)

单片机课程设计报告--心形流水灯

井冈山大学 机电工程学院 单片机 课程设计报告 课程名称:单片机 设计题目:心形流水灯 姓名:玉红 专业:生物医学工程 班级:11级医工本一班 学号:110615017 指导教师:王佑湖 2013年11月27日

目录 1引言 (2) 1.1设计任务 (2) 1.2设计要求……………………………………………… ..2 2 课题综述 (2) 2.1课题的来源 (2) 2.2面对的问题 (2) 3 系统分析 (2) 3.1 STC89C52单片机引脚图及引脚功能介绍 (2) 4 系统设计 (4) 4.1硬件设计 (4) 4.1.1硬件框图 (4) 4.1.2硬件详细设计 (5) 4.2 软件设计 (5) 4.3 硬件原理图 (6) 4.4 元件清单 (6) 4.5 硬件焊接

图 (6) 4.6 代码编写 (7) 5心得体会 (7) 6致 (8) 参考文献 (8) 1 引言 单片机课程设计主要是为了让我们增进对STC89C51单片机电路 的感性认识,加深对理论方面的理解。了解软硬件的有关知识,并掌握软硬件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。另外,通过简单课题的设计练习,使我们了解必须提交的各项工程文件,达到巩固、充实和综合运用所学知识解决实际问题的目 的。 1.1设计任务 设计一个单片机控制的流水灯系统 1.2设计要求 (1)32个LED灯; (2)可实现多种的亮灯(如左循环,右循环,间隔闪,90度交叉闪等)。 2 课题综述

2.1 课题的来源 当今社会,这种由单片机芯片控制各种硬件工作的技术也日益成熟,并普及在交通、化工、机械等各个领域。而流水灯这项技术在生活中的应用更是广泛,较为贴近生活。而流水灯控制的设计所需要的知识也正好吻合了我们本学期对于单片机这门课程的学习,所以设计流水灯控制的这个课题让我们对知识的学习和巩固都有了进一步的加深。 2.2 面对的问题 这次课程设计是通过STC89C52位单片机实现。但面对的问题却是两方面的:一个是软件的设计,也就是实现流水灯控制功能的程序编辑;另一个是硬件的设计,需要我们自己连接、焊接电路板。而更为严峻的就是设计的最后还要将软硬件相结合。 3 系统分析 3.1 STC 89C52单片机引脚图及引脚功能介绍 本次设计的目的在于加深STC89C52单片机的理解,首先来简单认识一下,它的引脚如图3-1所示: 图3.1 STC89C52

流水灯课程设计(免费)..

数字电子技术课程设计报告 (彩灯控制器) 专 专业:电子信息工程 班级:7B1211 学号:123025 姓名:白旭飞 年月:2014-6-28

一、设计要求 1. 以8或10个指示灯作为显示器件,能自动的从左到右、从右到左自动的依次被点亮,如此周而复始,不断循环。 2.打开电源时控制器可自动清零,每个指示灯被点亮的时间相同约为0.5S~2S 范围内。 3.用计算机画出设计电路图,进行仿真分析验证其正确性。 4.写设计说明书一份(画总原理框图以及说明主要工作原理,单元电路的设计和元器件的选择,画出完整的电路图和元器件明细表,收获、体会及建议) 二、设计的作用,目的 1.作用 利用控制电路可使彩灯(例如霓虹灯)按一定的规律不断的改变状态,不仅可获得良好的观赏效果,且可以省电(与彩灯全亮相比)。 2.目的 用NE555芯片,74LS151芯片,74LS163芯片,74LS194,以及一些逻辑门芯片完成彩灯控制器。 三、设计的具体实现 1.系统概述 接通电源时,555占空比可调振荡器产生1s单位的脉冲,脉冲送到下一个模块74LS151计数器,目的实现模5计数器,达到每五秒生成一个脉冲输向下一个芯片74LS194移位寄存器以及计数器74LS163。进而彩灯在脉冲的作用下依次点亮,并实现循环,完成实验要求。 2.总体思路 先用555定时器用来生成1s标准单位cp脉冲,把脉冲给计数器74LS151,通过74LS151形成模5加法计数器,再将74LS151输出信号供给74LS194移位寄 存器输入端,Q 0,Q 1, Q 2 和Q 3 接彩灯然后连接几个逻辑门,把74LS194接成环形 计数器。就能实现基本电路要求。 3.方案设计 总体电路共分三大块。第一块实现时钟信号的产生;第二块实现灯亮灭情况的演示;第三块实现灯亮灭的控制及节拍控制。

跑马灯VHDL课程设计报告

跑马灯VHDL课程设计 一、设计任务 控制8个led进行花式显示,设计四种显示模式: 1.从左到右逐个点亮led; 2.从右到左逐个点亮led; 3.从两边到中间逐个点亮led; 4.从中间到两边逐个点亮led; 四种模式循环切换,由复位键rst控制系统的运行与停止. 二、设计过程 根据系统设计要求,采用状态机进行设计,状态机具有四种状态,每种状态完成一种显示模式四种状态间使用case语句进行切换. 程序如下: library ieee; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_1164.all; entity pmd is port( clk, rst: in std_logic; y: buffer std_logic_vector(7 downto 0)); end pmd; architecture behave of pmd is type states is (state0, state1, state2, state3); signal state: states;

begin process (clk, rst) begin if rst='1' then y<="00000000" ; state <= state0; elsif (clk'event and clk='1') then case state is when state0 => if y="00000000" then y<="10000000";state <= state0; elsif y="10000000" then y<="01000000";state <= state0; elsif y="01000000" then y<="00100000";state <= state0; elsif y="00100000" then y<="00010000";state <= state0; elsif y="00010000" then y<="00001000";state <= state0; elsif y="00001000" then y<="00000100";state <= state0; elsif y="00000100" then y<="00000010";state <= state0; elsif y="00000010" then y<="00000001";state <= state1; end if; when state1 => if y="00000001" then y<="00000010";state <= state1; elsif y="00000010" then y<="00000100";state <= state1; elsif y="00000100" then y<="00001000";state <= state1; elsif y="00001000" then y<="00010000";state <= state1; elsif y="00010000" then y<="00100000";state <= state1; elsif y="00100000" then y<="01000000";state <= state1;

微机原理课程设计流水灯控制系统.doc

微机原理课程设计 流水灯控制系统 姓名 :XX 学院:物理电气信息学院 班级: 2010 电子 姓名 :12010245

流水灯控制系统 一、设计内容: 本课程设计选用8086 对 8255A的 A口控制来实现模拟流水灯功能的 实现。编写相关程序,通过proteus仿真软件来实现我名字“安亮” 两个字的闪烁,“安”字接 8255 的 A 口的 P0,“亮”字接 A 口的 P1。先让“安”字和“亮”字同时点亮,再让两个字同时暗,接着让“安”字点亮,再让“亮”字点亮,然后让“安”字和“亮”字同时亮暗闪 烁八次,再跳到开始,以此循环。 二、设计目的: 1、了解流水灯的基本工作原理 2、熟悉 8255A 并行接口的各种工作方式和应用 3、利用 8255A 接口,LED 发光二极管,设计一个流水灯模拟系统,让我的名字“安亮”两个字按一定规律点亮。 三、实验原理 在 8086 系统中,采用 16 位数据总线,进行数据传输时,CPU

总是将低 8 位数据线上的数据送往偶地址端口,而过高8位数据线上 的数据送往奇地址端口反过来,从偶地址端口取得的数据总是通过低 8 位数据线传送到CPU,从奇地址端口取得的数据总是通过高8 位数据线送到 CPU。在 8086 系统中,将 8255A的 A1端和地址总线的 A29255A 在对 CPU并且,相连, A1 端和地址总线的 A0 的 8255A 而将相连, 的端口进行访问时,将地址总线的 A0 位总是设置为 0。本课程设计通 过对 8255A 的 A 口控制来实现模拟流水灯功能的实现。“安”接 A 口 的 P0,“亮”接 A口的 P1,实现两个字按一定规律的一个闪烁。 8255 的内部结构 255A 内部结构由以下四部分组成:数据端口A、B、C;A组控制和 B 组控制;读 / 写控制逻辑电路;数据总线缓冲器。 端口 A:包括一个 8 位的数据输出锁存 / 缓冲器和一个 8 位的数据 输入锁存器,可作为数据输入或输出端口,并工作于三种方式中的任何一种。

花样流水灯课程设计.

课程论文 花样流水灯的设计 课程单片机技术及系统设计 学生姓名 学号 所在学院 所在班级 任课教师 提交时间2014年5月 25日至2014年5月30日

目录 一.前言 1.1 设计概述................................................................................ (2) 1.2设计主要功能 (2) 二.设计过程 2.1原理图中所使用的元器件功能 (3) 2.2程序在功能实现过程中的作用 (5) 三体会 3.1课程设计体会 (5) 四. 文献 4.1参考文献 (6) 五. 附录 5.1流水灯电路图 (7) 5.2流水灯程序 (7)

摘要:当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。 关键词:单片机控制系统流水灯 一.前言 1.1设计概述 整个系统工作由软件程序控制运行,根据需要,可以上电后系统经过初始化,进入用户设定模式状态。于AT89C51单片机的彩灯控制方案,实现对LED灯的控制。本方案以AT89C52单片机作为主控核心,与驱动等模块组成核心主控制模块。在主控模块上设有晶振电路和8个LED灯,根据需要编写若干种亮灯模式,根据各种亮灯时间的不同需要,在不同时刻输出灯亮或灯灭的控制信号 1.2设计主要功能 通过发光二极管显示不同的花样,并且可以通过按键来控制流水灯的速度通过学习单片机工作原理和各种工作方式及各管脚的功能,想通过P3 口的俩管脚P3.2和P3.3第二功能,即外部中断来使CPU 响应,达到控制流水灯的目的

VHDL课程设计-PS2键盘

VHDL课程设计-PS2键盘

目录 一、课程设计的目的与任务 (3) 二、课程设计题目 (3) 1、指定题目: (3) 2、自选题目: (3) 三、课程设计的内容与要求 (3) 1、设计内容 (4) 2、设计要求 (4) 四、实验仪器设备 (4) 五、设计方案 (4) 1、PS2解码 (4) 2、设计思路 (6) 3、模块设计 (7) 4、各模块分析 (8) (1)PS2时钟检测模块 8 (2)PS2解码模块 10 (3)PS2组合模块 12 (4)控制LED模块 14 (5)PS2总的组合模块 16 六、综合与仿真 (17) 1、综合 (17) 2、仿真 (18) (1)电平检测模块仿真 (18) (2)LED灯控制模块仿真 (18)

(3)PS2_module总模块仿真 (19) 七、硬件下载 (23) 八、心得体会 (24) 九、参考文献 (24) 一、课程设计的目的与任务 (1)熟练掌握EDA工具软件QuartusII的使用; (2)熟练用VHDL硬件描述语言描述数字电路; (3)学会使用VHDL进行大规模集成电路设计; (4)学会用CPLD\FPGA使用系统硬件验证电路设计的正确性; (5)初步掌握EDA技术并具备一定的可编程逻辑芯片的开发能力; 二、课程设计题目 1、指定题目: 0 :多功能计数器;1 :数字秒表;2 :简易数字钟;3 :简易频率计; 4 :彩灯控制器; 5 :交通灯控制器; 6 :四路智力竞赛抢答器; 7 :简易微波炉控制器;8 :表决器;9 :数字密码锁; 我的的学号尾数是2,所以我要做的题目是简易数字钟。由于我之前已经学过Verilog HDL和VHDL,所以简易数字钟相对于我比较简单,我完成了简易数字钟并验收后,再选择了另一个自选题目来完成。 简易数字钟:设计一个以“秒”为基准信号的简易数字钟,显示时、分、秒,同时可实现整点报时和清零(我已经完成,而且已经验收了)。 2、自选题目: 在完成了数字钟的设计后,我选择了另一个设计的题目,那就是PS2键盘扫描。所以这次课程设计我的报告主要详细写的是PS2键盘扫描的程序,而不是简易数字钟。 PS键盘扫描:设计一个PS键盘扫描程序,能接受键盘的输入时钟和数据,区别哪一个键输入,同时解译通码和断码,使用LED灯来显示收到的数据。三、课程设计的内容与要求

电子课程设计—电子流水灯设计报告

《电子技术》 课程设计报告 设计题目:电子流水灯电路设计与制作

电子流水灯电路设计与制作报告 一、设计目的 1.能够全面的巩固和应用“电子技术”课程中所学的基础理论和基本方法,并初步掌握小型数字系统设计的基本方法。 2.能够合理、灵活地应用各种标准集成电路(SSI、MSI、LSI等)器件实现规定的数字系统。 3.培养独立思考、独立准备资料、独立设计规定功能的数字系统能力。 4.培养独立进行实验,包括电路布局、安装、调试和排除故障的能力。 5.培养书写综合设计实验报告的能力。 二、设计任务 用中小规模集成电路设计并制作一个能实现8个彩灯正序或反序按1秒依次点亮的电路: 1.由晶振电路或555电路产生1HZ标准秒脉冲信号,作为电路的CP。 2.可逆的顺序脉冲发生电路。 3.显示驱动电路 4.彩灯。 5.电源。 三、设计方案

2、单元电路设计 ①秒脉冲发生电路 由555电路实现秒脉冲,f=1HZ。 ②可逆的顺序脉冲发生电路 可用74LS1191实现,5号引脚接拨动开关,拨动开关的2个端分别接高电平(接5V电源)和低电平(接地),当开关拨到高电平时,进行减计数,当开关拨到低电平时,进行加计数,这样来实现可逆顺序脉冲发生电路 ③显示驱动电路 可由74ls138实现译码,来控制发光2极管的发光情况 74LS138真值表

R3-R10电阻起到保护发光二极管的作用。 ④电源电路 将12V电压整流成5V。 3、整机电路图

555集成电路各引脚名称:1地GND,2触发,3输出,4复位,5控制电压,6门限(阈值)7放电,8电源电压VCC。 74ls191各引脚名称:1-3并行数据输入端,2-3输出端,6-7输出端,5加减计数方式控制端,11电源,4地GND,14秒脉冲输入端,12计数控制端,13时钟输出端 74ls138各引脚名称:1-3译码地址输入端,7-15译码输出端,16电源,8地GND,4-5选通端(低电平有效),6选通端(高电平有效) 四、主要元器件介绍 1.通用实验底板 2.直流稳压电源(5V) 3.集成电路:555、74LS191、74LS138 4.电容:47uF/16V,0.01uF/16V 5.电阻:10k,1k 6.数显:发光二极管 7.开关:波动开关 五、焊接与调试 1、元器件布局图 2、焊接步骤

花样流水灯设计

单片机课程设计 2014年 6月 15日 课 程 单片机课程设计 题 目 花样流水灯 院 系 电气工程及其自动化系 专业班级 1112班 学生姓名 温亿锋 学生学号 201111631227 指导教师 张瑛

一丶任务 设计一款以AT89C51单片机作为主控核心,按键控制电路、流水灯显示电路以及单片机最小系统等模块组成的核心主控制电路。 二丶设计要求 通过发光二极管显示不同的花样(至少有六种花样),并且可以通过按键来控制流水灯的速度。 三丶设计方案 本方案主要是通过对基于单片机的多控制、多闪烁方式的LED流水灯循环系统的设计,来达到本设计的要求。其硬件构成框图如下图所示,以单片机为核心控制,由单片机最小系统(时钟电路、复位电路、电源)、按键控制电路、LED 发光二极管和5V直流电源组成。 单片机流水灯循环控制系统硬件框图 此设计方案中单片机的P1口接5路按键控制电路,实现流水灯花型的切换功能;单片机的P3.7引脚接上一个按钮开关以实现对流水灯闪烁频率的控制,即实现了快慢两种节拍实现花型的变换;单片机上的P2口接八路LED发光二极管组成流水灯电路,显示流水灯循环情况。 四丶系统硬件设计 4.1 直流稳压电源电路

对于一个完整的电子设计来讲,首要问题就是为整个系统提供电源供电模块,电源电路的稳定可靠是系统平稳运行的前提和基础。电子设备除用电池供电外,还采用市电(交流电网)供电。通过变压、整流、滤波和稳压后,得到稳定的直流电。直流稳压电源是电子设备的重要组成部分。本项目直流稳压电源为+5V。 直流稳压电源的制作一般有3种制作形式,分别是分立元件构成的稳压电源、线性集成稳压电源和开关稳压电源。下图为稳压电源采用的是三端集成稳压器7805构成的正5V直流电源。 三端固定式集成稳压电源电路图 AT89C51单片机的工作电压范围:4.0V---5.5V,所以通常给单片机外接5V 直流电源。此处用3节1.5V的干电池供电。 4.2 单片机最小系统 要使单片机工作起来,最基本的电路的构成由单片机、时钟电路、复位电路等组成,单片机最小系统如图所示。 时钟电路:本系统采用单片机内部方式产生时钟信号,用于外接一个12MHz 石英晶体振荡器和2个30pF微调电容,构成稳定的的自激振荡器,其发出的脉冲直接送入内部的时钟电路。 复位电路:确定单片机工作的起始状态,完成单片机的启动过程。单片机系统的复位方式有上电自动复位和手动按键复位。本设计采用手动按键复位,该复位方式同样具有上电自动复位功能。

流水灯课程设计

河南理工大学 电子技术课程设计报告 心 形 流 水 灯 姓名:明* 学号:3110080020** 专业班级:电气10-7班 指导老师:李端 所在学院:电气工程与自动化学院、

目录 摘要 (3) 一、设计指标(要求) (4) 二、系统框图 (4) 三、各单元电路设计、参数计算和元器件选择 3.1 脉冲产生电路 (5) 3.2 复位电路 (8) 3.3 分频电路 (8) 3.4 移位控制电路 (10) 3.5 显示部分 (11) 四、电路图及工作原理 (12) 五、元器件清单 (12) 六、实际PCB图或布线 (13) 七、设计总结 7.1 电路的特点和方案的优缺点 (13) 7.2 心得体会 (14) 八、参考文献 (15)

摘要 随着时代的进步,人们审美方式的提高,流水灯在都市生活中扮演着愈加不可或缺的角色。酒店,婚庆,酒吧,KTV,广场,商场,招牌等场所的流星雨灯条、流水瀑布灯、月花灯等,给人以繁星闪耀,流水似瀑的感觉。而彩色LED闹钟,手机外壳的跑马灯的应用点缀了我们的日常生活。 流水灯的控制方法可通过多种方法实现,但相对现代可编程控制器而言,利用移位寄存器实现最为便利。通常用左移寄存器实现灯的单方向移动,通过双向移位寄存器实现灯的双向移动。 此次课程设计,是通过制作四路流水灯来实现18个LED心形灯的控制。 关键词:双向移位寄存器,NE555脉冲电路,LED灯。

一、 设计指标 (1)输出为4路(18个)LED 灯; (2)要求能实现左移右移功能,左右移自动切换; (3)移动速度可调节 (4)每个循环左移和右移的步数和变化规律自定。 二、系统框图

VHDL课程设计报告---交通灯设计

课程设计 课程名称:交通灯设计. 学院:电气工程学院专业:测仪姓名:学号: 年级:级任课教师: 2012年 1月12日

电气工程学院 课程设计任务书 课题名称:交通灯控制器的设计 专业、班级:测控技术与仪器测仪班 指导教师: 20 年1 月2 日至20 年1 月13 日共2周 指导教师签名: 教研室主任签名: 分管院长签名:

一、课程设计内容 1.学习ALTERA公司的FPGA/CPLD的结构、特点和性能。 2.学习集成开发软件MAX+plus II/Quartus II的使用及设计过程。 3.熟悉EDA工具设计数字电路设计方法,掌握VHDL硬件描述语言设计方法。 4.根据给定题目设计数字电路,来加深对可编程逻辑器件的理解和掌握。 二、课程设计应完成的工作 1.在所选择器件内完成交通灯控制器的设计,要求设计完成后芯片具有交通灯控制器的全部功能、包括显示和操作接口。 2.交通灯控制器要求控制十字路口两道路的交通灯,两道路交替通行,每次通行时间可设定20——60秒之间,每个路口要求有前行、禁止、人行灯。 (根据实际设计进度考虑可以增加左右转向灯,等待和通行时间显示等)。 3.撰写设计说明书一份(不少于2000字),阐述系统的工作原理,软、硬件设计方法,重点阐述软件思路。说明书应包括封面、任务书、目录、摘要、正文、参考文献(资料)等内容,以及硬件电路综合图和软件程序清单等材料。 注:设计说明书题目字体用小三,黑体,正文字体用五号字,宋体,小标题用四号及小四,宋体,并用A4纸打印。 三、课程设计进程安排

四、设计资料及参考文献 1.康华光主编,《电子技术基础-数字部分》,高等教育出版社,1998。2.谭会生等主编,《EDA技术及应用》,西安电子科技大学出版社,2001 3.潘松等主编,《EDA技术实用教程》,科学出版社,2006 4.雷伏容主编,《VHDL电路设计》,清华大学出版社,2006 5.Charles H.Roth等著,《数字系统设计与VHDL》,电子工业出版社,2008 五、成绩评定综合以下因素: (1) 说明书及设计图纸的质量(占50%)。 (2) 独立工作能力及设计过程的表现(占30%)。 (3) 回答问题的情况(占20%)。 说明书和图纸部分评分分值分布如下:

流水灯控制实验报告及程序

实验三流水灯控制实验 姓名专业通信工程学号成绩 一、实验目的 1.掌握Keil C51 软件与protues软件联合仿真调试的方法; 2.掌握如何使用程序与查表等方法实现流水效果; 3.掌握按键去抖原理及处理方法。 二、实验仪器与设备 1. 微机1台 2. Keil C51集成开发环境 3. Proteus仿真软件 三、实验内容 1.用Proteus设计一流水灯控制电路。利用P1口控制8个发光二级管L1—L8。P3.3口接一按 键K1。参考电路如下图所示。其中74LS240为八反响三态缓冲器/线驱动器。 2.用中断或查询方式编写程序,每按动一次K1键,演示不同的流水效果。若用KEY表示按键的 次数,则其对应的流水效果如下: ① KEY=0: L1-L8全亮; ② KEY=1: L1-L8先全灭,然后自右向左单管点亮,如此循环; ③ KEY=2: L1-L8先全灭,然后自右向左依次点亮,如此循环; ④ KEY=3: L1-L8先全亮,然后自左向右依次熄灭,如此循环; ⑤ KEY=4: L1-L8先全灭,然后整体闪烁,如此循环; ⑥ KEY=5:自行设计效果。 以上移位及闪烁时间间隔均设置为0.3秒,按动5次按键后,再按键时,流水效果从头开始循环。 四、实验原理 1.按键去抖原理:通常按键所用的开关为机械弹性开关,当机械触点断开、闭合时,电压信号 波形如下图所示。由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定的接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动。抖动时间的长短由按键的机械特性决定,一般为5~10ms。按键抖动会引起一次按键被误读多次。为了确保CPU对键的一次闭合仅做一次处理,必须去除按键抖动。在键闭合稳定时,读取键的状态,并且必须判别;在键释放稳定后,再作处理。按键的抖动,可用硬件或软件两种方法消除。常用软件方法去抖动,即检测到按键闭合后执行一个5~10ms延时程序;让前沿抖动消失后,再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有按键按下。当检测到按键释放后,也要给5~10ms的延时,待后延抖动消失后,才能转入该键的处理程序。 2.74LS240:八反相三态缓冲器/线驱动器 引脚排列图:

Proteus花样流水灯课程设计

Proteus花样流水灯课程设计

课程论文 题目:基于51单片机LED流水灯设计 课程名称: 学生姓名: 学生学号: 系别: 专业: 年级: 任课教师: 电气信息工程学院制 1月 基于51单片机的LED流水灯设计

1 单片机AT89C51芯片简介 MCS-51兼容4K字节,可编程闪烁存储器,寿命:1000写/擦循环,数据保留时间:。全静态工作:0Hz—24Hz,三级程序存储器锁定。128*8位内部RAM,32可编程I/O线,两个16位定时器/计数器,5个中断源可编程串行通道,低功耗的闲置和掉电模式,片内震荡器和时钟电路。 图1 AT89C51芯片

1.1电源引脚 Vcc(40脚):典型值+5V。 Vss(20脚):接低电平。 1.2外部晶振 XTAL1、XTAL2分别与晶振两端相连接。 1.3输入输出口引脚 P0口:I/O双向口。作输入口时,应先软件置“1”. P0口:是一个8位漏极开路输出型双向I/O端口。作为输出端口时,每位能以吸收电流的方式驱动8 个TTL输入,对端口写1时,又可作高阻抗输入端用。在访问外部程序或数据存储器时,它是时分多路转换的地址(低8位)/数据总线,在访问期间将激活内部的上拉电阻。 1.4控制引脚 RST、ALE/-PROG、-PSEN、-EA/Vpp组成了MSC-51的控制总线。 RST (9脚):复位信号输入端(高电平有效)。ALE/-PROG(30脚):地址锁存信号输出端.第一功能:编程脉冲输入。-PSEN(29脚):外部程序存储器读选通信号。-EA/Vpp(31脚):外部程序存储器使能端。第二功能:编程电压输入端(+21V)。 2硬件电路 2.1晶振电路 单片机晶振的作用是为系统提供基本的时钟信号。一般一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使

流水灯课程设计

基于单片机的流水灯设计 学院: 专业: 指导老师: 姓名: 班级: 学号: 年月日

摘要:当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。 This age is a new technology emerge in endlessly era, in the electronic field especially automation intelligent control field, the traditional schism components or digital logic circuit, is composed of control system with unprecedented speed was replaced by microcontroller intelligent control system. SCM has small, strong function, low cost, etc, it can be said that wide application, intelligent control and automatic control core is the microcontroller. 关键词:LED 单片机控制系统流水灯 目录 1.前言 1.1 设计概述 (2) 1.2 设计主要功能 (2) 2. 硬件组成 2.1 80C51单片计算机的组成原理 (3) 2.组成框图及内部总体结构 (3) 2.寄存器和存储器………………………………………………………

VHDL课程设计报告

湖南科技大学 信息与电气工程学院 课程设计任务书 20 —20 学年第学期 专业:学号:姓名: 课程设计名称: 设计题目: 完成期限:自年月日至年月日共周设计依据、要求及主要内容(可另加附页): 指导教师(签字): 批准日期:年月日

目录 一、摘要 二、VHDL语言介绍 三、设计的目的 四、设计内容 五、电路工作原理 六、主要程序及仿真结果 七、对本次设计的体会和建议 八、参考文献

一、摘要 人类社会已进入到高度发达的信息化社会。信息化社会的发展离不开电子信息产品开发技术、产品品质的提高和进步。电子信息产品随着科学技术的进步,其电子器件和设计方法更新换代的速度日新月异。实现这种进步的主要原因就是电子设计技术和电子制造技术的发展,其核心就是电子设计自动化(EDA,Electronics Design Automation)技术,EDA技术的发展和推广应用又极大地推动了电子信息产业的发展。为保证电子系统设计的速度和质量,适应“第一时间推出产品”的设计要求,EDA技术正逐渐成为不可缺少的一项先进技术和重要工具。目前,在国内电子技术教学和产业界的技术推广中已形成“EDA热”,完全可以说,掌握EDA技术是电子信息类专业学生、工程技术人员所必备的基本能力和技能。EDA技术在电子系统设计领域越来越普及,本设计主要利用VHDL语言设计一个电子数字钟,它的计时周期为24小时,显示满刻度为24时59分59秒。总的程序由几个各具不同功能的单元模块程序拼接而成,其中包括分频程序模块、时分秒计数和设置程序模块、比较器程序模块、三输入数据选择器程序模块、译码显示程序模块和拼接程序模块。并且使用软件进行电路波形仿真。 关键词:数字钟EDA VHDL语言 二、VHDL语言介绍 1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL 设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。 三、设计的目的 本项实验通过六十进制计数器和数字钟的设计与仿真,学习VHDL语言及VHDL文本输入设计方法,编写六十进制计数器和数字钟源程序,应用VMAX+plusII软件进HDL文本输入设计与波形仿真。熟练地运用数字系统的设计方法进行数字系统设计,能进行较复杂的数字系统设计,按要求设计一个数字钟。 四、设计内容 1、60进制计数器计数器 60进制计数器计数器是一个用以实现计数功能的时序部件,它不仅可用来及脉冲数,还常用作数子系统的定时、分频和执行数字运算以及其它特定的逻辑功能。计数器种类很多。按

相关文档