文档库 最新最全的文档下载
当前位置:文档库 › 现代电子技术综合实验考试程序(VHDL)

现代电子技术综合实验考试程序(VHDL)

现代电子技术综合实验考试程序(VHDL)
现代电子技术综合实验考试程序(VHDL)

跑马灯(几个LED灯动态闪烁,产生特定方波信号如01010111要用到单个LED灯,请同学们尝试修改paomadeng程序完成)、数码管显示(例如在三个数码管上显示“sos”)、蜂鸣器、LED点阵显示是电子科技大学现代电子技术综合实验常见的考试题目,现在综合如下,其中xx是按键防抖模块,可以不加。

entity paomadeng is

Port ( clk : in STD_LOGIC;

led : out STD_LOGIC_VECTOR (7 downto 0));

end paomadeng;

architecture Behavioral of paomadeng is

signal temp:STD_LOGIC_VECTOR (7 downto 0):="11111111";

signal selt:STD_LOGIC_VECTOR (2 downto 0):="000";

signal newclk:std_logic:='0';

signal jishu:integer range 1 to 24000000;

begin

process(clk)

begin

if clk'event and clk='1' then

if jishu=24000000 then

jishu<=1;newclk<=not newclk;

else jishu<=jishu+1;

end if;

end if;

end process;

process(newclk)

begin

led<=temp;

if newclk'event and newclk='1' then

if selt="100" then

selt<="000";

else selt<=selt+1;

end if;

end if;

case selt is

when "000"=>temp<="11111110";

when "001"=>temp<="11111100";

when "010"=>temp<="11111000";

when "011"=>temp<="11110000";

when "100"=>temp<="11111111";

when others=>temp<="11111111";

end case;

end process;

end Behavioral;

entity dianzhen is

Port ( clk : in STD_LOGIC;

en:out STD_LOGIC;

dian : out STD_LOGIC_VECTOR (15 downto 0);

wei:out STD_LOGIC_VECTOR (3 downto 0)); end dianzhen;

architecture Behavioral of dianzhen is

signal selt:STD_LOGIC_VECTOR (3 downto 0):="0000"; signal newclk:std_logic:='0';

signal jishu:integer range 1 to 24000;

begin

process(clk)

begin

if clk'event and clk='1' then

if jishu=24000 then

jishu<=1;newclk<=not newclk;

else jishu<=jishu+1;

end if;

end if;

end process;

process(newclk)

begin

wei<=selt;en<='0';

if newclk'event and newclk='1' then

selt<=selt+1;

end if;

case selt is

when "0000"=>dian<="1111111001111111";

when "0001"=>dian<="1111111001111111";

when "0010"=>dian<="1111111001111111";

when "0011"=>dian<="1111111001111111";

when "0100"=>dian<="1111111001111111";

when "0101"=>dian<="1111111001111111";

when "0110"=>dian<="1111111001111111";

when "0111"=>dian<="0000000000000000";

when "1000"=>dian<="0000000000000000";

when "1001"=>dian<="1111111001111111";

when "1010"=>dian<="1111111001111111";

when "1011"=>dian<="1111111001111111";

when "1100"=>dian<="1111111001111111";

when "1101"=>dian<="1111111001111111";

when "1110"=>dian<="1111111001111111"; when "1111"=>dian<="1111111001111111"; when others=>dian<="1111111111111111"; end case;

end process;

end Behavioral;

entity fengmingqi is

Port ( clk : in STD_LOGIC;

jiao : out STD_LOGIC);

end fengmingqi;

architecture Behavioral of fengmingqi is signal clk1,clk2,clk3,temp:STD_LOGIC:='0'; signal jishu1:integer range 1 to 12000000; signal jishu2:integer range 1 to 1200000; signal jishu3:integer range 1 to 120000; signal daout:STD_LOGIC:='0';

begin

process(clk)

begin

if clk'event and clk='1' then

if jishu1=12000000 then

jishu1<=1;clk1<=not clk1;

else jishu1<=jishu1+1;

end if;

if jishu2=1200000 then

jishu2<=1;clk2<=not clk2;

else jishu2<=jishu2+1;

end if;

if jishu3=120000 then

jishu3<=1;clk3<=not clk3;

else jishu3<=jishu3+1;

end if;

end if;

end process;

process(clk1)

begin

jiao<=temp;

if clk1'event and clk1='1' then

daout<=not daout;

end if;

end process;

process(daout)

begin

case daout is

when '0'=>temp<=clk2;

when '1'=>temp<=clk3;

when others=>temp<=clk2;

end case;

end process;

end Behavioral;

entity xx is

Port ( clk : in STD_LOGIC;

reset : in STD_LOGIC;

runstop : in STD_LOGIC;

clr : out STD_LOGIC;

en : inout STD_LOGIC);

end xx;

architecture ART of xx is

begin

process(reset,runstop)

begin

if runstop ='1' and runstop'event then

en<=(NOT en);

end if;

if en='1' then

clr<='0';

elsif reset='1' and reset'event then

clr<='1';

end if;

end process;

end art;

entity sos is

Port ( clk : in STD_LOGIC;

cs : out STD_LOGIC;

selt : out STD_LOGIC_VECTOR (2 downto 0);

led : out STD_LOGIC_VECTOR (6 downto 0);

dp : out STD_LOGIC);

end sos;

architecture Behavioral of sos is

signal newclk:STD_LOGIC:='0';

signal count1:integer range 1 to 24000000;

signal count2:STD_LOGIC_VECTOR (2 downto 0):="101"; begin

process(clk)

begin

if clk'event and clk='1' then

if count1=24000000 then

count1<=1;newclk<=not newclk;

else count1<=count1+1;

end if;

end if;

end process;

process(newclk,clk)

begin

cs<='0';dp<='1';

if newclk'event and newclk='1' then

if count2="111" then

count2<="101";

else count2<=count2+1;

end if;

end if;

selt<=count2;

case count2 is

when "101"=>led<="0100100";

when "110"=>led<="0000001";

when "111"=>led<="0100100";

when others=>led<="1111111";

end case;

end process;

end Behavioral;

VHDL实验报告

《创新实验》实验报告 —基于VHDL的编程和硬件实现

一、实验目的 1.熟悉和掌握硬件描述语言VHDL的基本语法及编写; 2.掌握软件Xilinx ISE 10.1的使用; 3.熟悉SDZ-6电子技术实验箱的使用; 4.了解节拍脉冲发生器等基本电路的实现; 5.了解八位二进制计数器的功能与设计; 6.学习键盘和七段数码管显示的控制和设计。 二、实验内容 1.Xilinx ISE 10.1软件的使用; 2.节拍脉冲发生器等基本电路的实现; 3.八位二进制计数器的实现 4.键盘扫描及显示的实现 三、实验器材 1、PC机 2、SDZ-6电子技术实验箱 3、正负5V电源 4、I/O接口线 四、软件的使用 在安装Xilinx10.1软件时,需要一个ID号,其实这个ID号是可以重复使用的,几个同学在官网注册后就可以共享ID号了。 安装完成之后就可以使用这个软件编写相应的VHDL的程序。 1.新建工程 File—>New Project 弹出下面的对话框 输入工程名后单击Next。然后根据本实验的实验箱进行以下设置。

以后的步骤一般都是单击Next(有些资料上会介绍有些这些步骤的具体功能,但对于本实验不必用到),最后单击Finish,完成新建一个工程。在窗口的左边会出现刚刚新建的工程,如下: 2.新建一个VHDL的源文件。 在上图中,右击工程选择New Source ,弹出如下对话框。

在对画框的左边选择VHDL Module,输入文件的名字(改名字最好是你定义的实体的名字)。单击Next。出现下面的对话框。 该对话框主要是对外部端口的编辑。可以直接跳过,即单击Next,在源文件上编辑端口。然后在接下来的对话框中单击Finish。完成建立一个源文件。窗口右边就会出现刚才编辑的源文件。 3.编写和编译代码 将事先编好的代码复制到源文件里,然后保存文件。 选中左边的文件名,在窗体的左边出现如下编辑文档内容。

电子技术基础实验指导书

《电子技术基础》实验指导书 电子技术课组编 信息与通信工程学院

实验一常用电子仪器的使用 一、实验类型-操作型 二、实验目的 1、学习电子电路实验中常用的电子仪器——示波器、函数信号发生器、直流稳压电源、交流毫伏表、频率计等的主要技术指标、性能及正确使用方法。 2、初步掌握用双踪示波器观察正弦信号波形和读取波形参数的方法。 三、实验原理 在模拟电子电路实验中,经常使用的电子仪器有示波器、函数信号发生器、直流稳压电源、交流毫伏表及频率计等。它们和万用电表一起,可以完成对模拟电子电路的静态和动态工作情况的测试。 实验中要对各种电子仪器进行综合使用,可按照信号流向,以连线简捷,调节顺手,观察与读数方便等原则进行合理布局,各仪器与被测实验装置之间的布局与连接如图1-1所示。接线时应注意,为防止外界干扰,各仪器的共公接地端应连接在一起,称共地。信号源和交流毫伏表的引线通常用屏蔽线或专用电缆线,示波器接线使用专用电缆线,直流电源的接线用普通导线。

图1-1 模拟电子电路中常用电子仪器布局图 1、示波器 示波器是一种用途很广的电子测量仪器,它既能直接显示电信号的波形,又能对电信号进行各种参数的测量。现着重指出下列几点: 1)、寻找扫描光迹 将示波器Y轴显示方式置“Y1”或“Y2”,输入耦合方式置“GND”,开机预热后,若在显示屏上不出现光点和扫描基线,可按下列操作去找到扫描线:①适当调节亮度旋钮。②触发方式开关置“自动”。③适当调节垂直()、水平()“位移”旋钮,使扫描光迹位于屏幕中央。(若示波器设有“寻迹”按键,可按下“寻迹”按键,判断光迹偏移基线的方向。) 2)、双踪示波器一般有五种显示方式,即“Y1”、“Y2”、“Y1+Y2”三种单踪显示方式和“交替”“断续”二种双踪显示方式。“交替”显示一般适宜于输入信号频率较高时使用。“断续”显示一般适宜于输入信号频率较低时使用。 3)、为了显示稳定的被测信号波形,“触发源选择”开关一般选为“内”触发,使扫描触发信号取自示波器内部的Y通道。 4)、触发方式开关通常先置于“自动”调出波形后,若被显示的波形不稳定,可置触发方式开关于“常态”,通过调节“触发电平”旋钮找到合适的触发电压,使被测试的波形稳定地显示在示波器屏幕上。 有时,由于选择了较慢的扫描速率,显示屏上将会出现闪烁的光迹,但被

电子技术实验指导书

实验一常用电子仪器的使用方法 一、实验目的 了解示波器、音频信号发生器、交流数字毫伏表、直流稳压电源、数字万用电表的使用方法。二实验学时 2 学时 三、实验仪器及实验设备 1、GOS-620 系列示波器 2、YDS996A函数信号发生器 3、数字交流毫伏表 4、直流稳压电源 5、数字万用电表 四、实验仪器简介 1、示波器 阴极射线示波器(简称示波器)是利用阴极射线示波管将电信号转换成肉眼能直接观察的随时间变化的图像的电子仪器。示波器通常由垂直系统、水平系统和示波管电路等部分组成。垂直系统将被测信号放大后送到示波管的垂直偏转板,使光点在垂直方向上随被测信号的幅度变化而移动;水平系统用作产生时基信号的锯齿波,经水平放大器放大后送至示波管水平偏转板,使光点沿水平方向匀速移动。这样就能在示波管上显示被测信号的波形。 2、YDS996A函数信号发生器通常也叫信号发生器。它通常是指频率从0.6Hz至1MHz的正弦波、方波、三角波、脉冲波、锯齿波,具有直流电平调节、占空比调节,其频率可以数字直接显示。适用于音频、机械、化工、电工、电子、医学、土木建筑等各个领域的科研单位、工厂、学校、实验室等。 3、交流数字毫伏表 该表适用于测量正弦波电压的有效值。它的电路结构一般包括放大器、衰减器(分压器)、检波器、指示器(表头)及电源等几个部分。该表的优点是输入阻抗高、量程广、频率范围宽、过载能力强等。该表可用来对无线电接收机、放大器和其它电子设备的电路进行测量。 4、直流稳压电源: 它是一种通用电源设备。它为各种电子设备提供所需要的稳定的直流电压或电流当电网电压、负载、环境等在一定范围内变化时,稳压电源输出的电压或电流维持相对稳定。这样可以使电子设备或电路的性能稳定不变。直流电源通常由变压、整流、滤波、调整控制四部分组成。有些电源还具有过压、过流等保护电路,以防止工作失常时损坏器件。 6、计频器 GFC-8010H是一台高输入灵敏度20mVrms,测量范围0.1Hz至120MHz的综合计频器,具备简洁、高性能、高分辨率和高稳定性的特点。 5、仪器与实验电路的相互关系及主要用途:

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灯来显示收到的数据。三、课程设计的内容与要求

VHDL实验报告03137

VHDL实验报告 60 庄炜旭实验三. 4位可逆计数器,4位可逆二进制代码-格雷码转换器设计 一.实验目的 学习时序电路的设计,仿真和硬件测试,进一步熟悉VHDL设计技术 1. 学习4位可逆计数器的设计 2. 学习4位可逆二进制代码-格雷码转换器设计 二.实验内容 设计4位可逆计数器,及4位可逆二进制代码-格雷码转换器,并仿真,下载。 [具体要求] 1.4位可逆计数器 a)使用CLOCK_50作为输入时钟,其频率为50MHz(对于频率大于50Hz的闪烁, 人眼会看到连续的光),因而,对其进行225的分频后,再用于时钟控制。(可 利用实验一) b)使用拨码开关SW17作为模式控制,置‘1’时为加法计数器,置‘0’时为减 法计数器,同时使用LEDR17显示SW17的值。 c)使用KEY3作为异步复位开关(按下时为0,不按为1),当为加法计数器时, 置“0000”,当为减法计数器时,置“1111”。 d)使用LEDR3,LEDR2,LEDR1,LEDR0作为转换后的输出结果显示,LEDR3为高 位,LEDR0为低位。 2.4位可逆二进制代码――格雷码转换器 a)使用拨码开关SW17作为模式控制,置‘1’时为二进制代码―>格雷码转换, 置‘0’时为格雷码―>二进制代码,同时使用LEDR17显示SW17的值。 b)使用拨码开关SW3, SW2, SW1, SW0作为输入的被转换数,SW3为高位,SW0 为低位。 c)使用LEDR3,LEDR2,LEDR1,LEDR0作为转换后的输出结果显示,LEDR3为高 位,LEDR0为低位。 三.管脚设定 SW[0]PIN_N25 SW[1]PIN_N26 SW[2]PIN_P25 SW[3] PIN_AE14 SW[17] PIN_V2 LEDR[0] PIN_AE23 LEDR[1] PIN_AF23 LEDR[2] PIN_AB21 LEDR[3] PIN_AC22 LEDR[17] PIN_AD12 KEY[3] PIN_W26

《模拟电子技术实验》实验指导书

北方民族大学 Beifang University of Nationalities 《模拟电子技术实验》课程指导书 北方民族大学教务处

北方民族大学 《模拟电子技术实验》课程指导书 编著杨艺丁黎明 校审杨艺 北方民族大学教务处 二〇一二年三月

《模拟电子技术实验》课程是工科类大学二年级学生必修的一门实践类课程。实验主要设备包括模拟电子技术实验箱、信号发生器、示波器、数字万用表、交流毫伏表和直流电源等。 课程教学要求是:通过该课程,学生学会正确使用常用的电子仪器,掌握三极管放大电路分析和设计方法,掌握集成运放的使用及运算放大电路各项性能的测量,学会查找并排除实验故障,初步培养学生实际工程设计能力,学会仿真软件的使用,掌握工程设计的概念和步骤,为以后学习和工作打下坚实的实践基础。 《模拟电子技术实验》课程内容包括基础验证性实验,设计性实验和综合设计实践三大部分。 基础验证性实验主要包括仪器设备的使用、双极性三极管电路的分析、负反馈放大电路的测量等内容。主要培养学生分析电路的能力,掌握电路基本参数的测量方法。 设计性实验主要包括运算电路的实现等内容。主要要求学生掌握基本电路的设计能力。 综合设计实践主要包括项目的选题、开题、实施和验收等过程,要求学生能够掌握电子产品开发的整个过程,提高学生的设计、制作、调试电路的能力。 实验要求大家认真做好课前预习,积极查找相关技术资料,如实记录实验数据,独立写出严谨、有理论分析、实事求是、文理通顺、字迹端正的实验报告。 本书前八个实验项目由杨艺老师编写,实验九由丁黎明老师编写。全书由丁黎明老师提出课程计划,由杨艺老师进行校对和排版。参与本书课程计划制订的还有电工电子课程组的全体老师。 2012年3月1日

VHDL课程设计PS键盘

目录 一、课程设计的目的与任务 (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、设计内容 (1)系统功能的分析; (2)实现系统功能的实际方案; (3)编写各功能模块的VHDL语言程序; (4)对各功能模块进行编译、综合、仿真、分析; (5)顶层文件设计 (6)对整个系统进行编译、综合、仿真、分析; (7)在CPLD\FPGA实验开发系统试验箱上进行硬件验证; (8)写实验报告;

数字电子技术实验指导书

数字电子技术实验指导书 (韶关学院自动化专业用) 自动化系 2014年1月10日 实验室:信工405

数字电子技术实验必读本实验指导书是根据本科教学大纲安排的,共计14学时。第一个实验为基础性实验,第二和第七个实验为设计性实验,其余为综合性实验。本实验采取一人一组,实验以班级为单位统一安排。 1.学生在每次实验前应认真预习,用自己的语言简要的写明实验目的、实验原理,编写预习报告,了解实验内容、仪器性能、使用方法以及注意事项等,同时画好必要的记录表格,以备实验时作原始记录。教师要检查学生的预习情况,未预习者不得进行实验。 2.学生上实验课不得迟到,对迟到者,教师可酌情停止其实验。 3.非本次实验用的仪器设备,未经老师许可不得任意动用。 4.实验时应听从教师指导。实验线路应简洁合理,线路接好后应反复检查,确认无误时才接通电源。 5.数据记录 记录实验的原始数据,实验期间当场提交。拒绝抄袭。 6.实验结束时,不要立即拆线,应先对实验记录进行仔细查阅,看看有无遗漏和错误,再提请指导教师查阅同意,然后才能拆线。 7.实验结束后,须将导线、仪器设备等整理好,恢复原位,并将原始数据填入正式表格中,经指导教师签名后,才能离开实验室。

目录实验1 TTL基本逻辑门功能测试 实验2 组合逻辑电路的设计 实验3 译码器及其应用 实验4 数码管显示电路及应用 实验5 数据选择器及其应用 实验6 同步时序逻辑电路分析 实验7 计数器及其应用

实验1 TTL基本逻辑门功能测试 一、实验目的 1、熟悉数字电路试验箱各部分电路的基本功能和使用方法 2、熟悉TTL集成逻辑门电路实验芯片的外形和引脚排列 3、掌握实验芯片门电路的逻辑功能 二、实验设备及材料 数字逻辑电路实验箱,集成芯片74LS00(四2输入与非门)、74LS04(六反相器)、74LS08(四2输入与门)、74LS10(三3输入与非门)、74LS20(二4输入与非门)和导线若干。 三、实验原理 1、数字电路基本逻辑单元的工作原理 数字电路工作过程是数字信号,而数字信号是一种在时间和数量上不连续的信号。 (1)反映事物逻辑关系的变量称为逻辑变量,通常用“0”和“1”两个基本符号表示两个对立的离散状态,反映电路上的高电平和低电平,称为二值信息。(2)数字电路中的二极管有导通和截止两种对立工作状态。三极管有饱和、截止两种对立的工作状态。它们都工作在开、关状态,分别用“1”和“0”来表示导通和断开的情况。 (3)在数字电路中,以逻辑代数作为数学工具,采用逻辑分析和设计的方法来研究电路输入状态和输出状态之间的逻辑关系,而不必关心具体的大小。 2、TTL集成与非门电路的逻辑功能的测试 TTL集成与非门是数字电路中广泛使用的一种逻辑门。实验采用二4输入与非门74LS20芯片,其内部有2个互相独立的与非门,每个与非门有4个输入端和1个输出端。74LS20芯片引脚排列和逻辑符号如图2-1所示。

电子技术实验指导..

电子技术实验指导 电子技术实验,实验仪器与被测电路的基本连接方法,如图1所示。 实验1 共发射极单级放大器 一、实验目的 1、学会放大器静态工作点的调试方法,分析静态工作点对放大器性能的影响。 2、掌握放大器电压放大倍数、输入电阻、输出电阻及最大不失真输出电压的测试方法。 3、熟悉常用电子仪器及模拟电路实验设备的使用。 二、实验原理 图1-1为电阻分压式工作点稳定单管放大器实验电路图。它的偏置电路由B1R 和B2R 分压电路组成,发射极接有电阻E R ,以稳定放大器的静态工作点。当放大器的输入端加入输入信号i u 后,在放大器的输出端便可得到一个与i u 相位相反、幅值被放大了的输出信号o u ,从而实现电压放大。 图1 测量模拟电子电路常用电子仪器的接法

在图1-1电路中,当流过偏置电阻B1R 和B2R 的电流远大于晶体管T 的基极电流B I 时(一般大5~10倍),它的静态工作点可用下式估算。 2 12 B B C C B B R U U R R ≈+, B B E C E U U I R -≈, C B I I β=,)(E C C CC CE R R I U U +-= 放大器的动态参数,电压放大倍数为 1 )1(//E be L C V R r R R A ββ ++-= 输入电阻为 121//[(1)]i B B be E R R R r R β=//++ 输出电阻为 C o R R ≈ 由于电子器件性能的分散性比较大,因此在设计和制作晶体管放大电路时,离不开测量和调试技术。在设计前应测量所有元器件的参数,为电路设计提供必要的依据,在完成设计和配装以后,还必须测量和调试放大器的静态工作点和各项性能指标。一个优质的放大器,必须是理论设计与实验调整相结合的产物。因此,除了学习放大器的理论知识和设计方法外,还必须掌握必要的测量与调试技术。 放大器的测量和调试包括:放大器静态工作点的测量与调试和放大器动态参数的测量与调试等。 1、放大器静态工作点的测量与调试 (1)静态工作点的测量:测量放大器的静态工作点,应在输入信号0=i u 的情况下进行。将放大器输入端与地端短接,用直流电压表分别测量晶体管各电极对地的电位B U 、C U 和E U 。然后算出 C I ≈E I =E U /E R ;BE U =B U —E U ,CE U =C U —E U 。为了减少误差,提高测量精度,应选用内阻 较高的直流电压表。 (2)静态工作点的调试:是指对管子集电流C I (或CE U )的调整与测试。 静态工作点是否合适,对放大器的性能和输出波形都有很大影响。以NPN 型三极管为例,如果工作点偏高,放大器易产生饱和失真,此时o u 的负半周被缩底,如图1-2a 所示。如果工作点偏低则易产生截止失真,即o u 的正半周被缩顶,如图1-2b 所示。所以在选定工作点以后还必须进行动态调试,即在放大器的输入端加入一定的i u ,检查输出电压o u 的大小和波形是否满足要求。如果不满足,则应调节静态工作点。 改变电路参数CC U 、C R 、B R (1B R 、2B R )都会引起静态工作点的变化,通常采用调节偏置电阻2B R 的方法来改变静态工作点,如减小2B R ,可使静态工作点提高。 最后还要说明的是:工作点“偏高”或“偏低”不是 绝对的,是相对信号的幅度而言,如果信号幅度很小,即使工作点较高或较低也不一定会出现失真。所以确切的说,产生波形失真是信号幅度与静态工作点设置配合不当所致。如需满足较大信号幅度的要求,静态工作点最好靠近交流负载的中点。 (a)截止失真 (b)饱和失真 图1-2 静态工作点对o u 的影响

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进制计数器计数器是一个用以实现计数功能的时序部件,它不仅可用来及脉冲数,还常用作数子系统的定时、分频和执行数字运算以及其它特定的逻辑功能。计数器种类很多。按

基于VHDL语言的EDA实验报告(附源码)

EDA 实验报告 ——多功能电子钟 姓名:张红义 班级:10级电科五班 学号:1008101143 指导老师:贾树恒

电子钟包括:主控模块,计时模块,闹钟模块,辅控模块,显示模块,蜂鸣器模块,分频器模块。 1.主控模块: 主要功能:控制整个系统,输出现在的状态,以及按键信息。 源代码: libraryieee; use ieee.std_logic_1164.all; useieee.std_logic_arith.all; useieee.std_logic_unsigned.all; entity mc is port(functionswitch,k,set,lightkey: in std_logic; chose21,setout: out std_logic; lightswitch:bufferstd_logic; modeout,kmodeout : out std_logic_vector(1 downto 0); setcs,setcm,setch,setas,setam,setah:outstd_logic); end mc; architecture work of mc is signalmode,kmode:std_logic_vector(1 downto 0); signal light,chose21buf:std_logic; signalsetcount:std_logic_vector(5 downto 0); begin process(functionswitch,k,set,lightkey) begin iffunctionswitch'event and functionswitch='1' then mode<=mode+'1'; end if; iflightkey'event and lightkey='1' then lightswitch<=not lightswitch; end if; if mode="01" thenchose21buf<='0'; else chose21buf<='1'; end if; ifk'event and k='1' then if mode="01" or mode="11" then kmode<=kmode+'1'; end if;end if; if set='1' then if mode = "01" then ifkmode="01" then setcount<="000001"; elsifkmode="10" thensetcount<="000010"; elsifkmode="11" then setcount<="000100";

电子技术实验指导书

电子技术实验指导书机电工程学院电气工程系2012年2月 实验一电子仪器使用及常用元件的识别与测试 一、实验目的 1.掌握常用电子仪器的基本功能并学习其正确使用方法。 2.学习掌握用双踪示波器观察和测量波形的幅值、频率及相位的方法。 3.掌握常用元器件的识别与简单测试方法。 二、仪器设备1.万用表 2.信号发生器3.晶体管毫伏表 4.示波器 三、实验内容 1.用万用表测量电压、电流、电阻等元器件,并判断二极管和三极管的好坏。 2.用信号发生器调出不同大小的正弦波,并用晶体管毫伏表测量。 3.用信号发生器调出不同波形,用示波器进行观察测量。 四、实验步骤 1. 将万用表旋钮调至相应的功能和适当的挡位,分别测量试验台上给出的电源电压、单独给出的电阻等元器件,特别注意安全以及万用表的相应挡位。 2. 用万用表判断二极管的好坏和极性。将万用表放在×10的电阻挡,测量一个二极管的电阻并记录下来,然后交换万用表的两只表笔,再次测量它的电阻并记录下来,根据两次测量的结果判断二极管的好坏。如果两次测得的电阻值都很大,说明二极管内部已经断路,如果两次测得的电阻值都很小,说明二极管内部已经短路,只有两次测得的电阻值相差很大,才说明二极管是好的。如果是指针型万用表,测得电阻比较小的那次二极管是正向导通的,通常此时黑色表笔所接的是二极管的正极,其他万用表要先确定其测量电阻时内部电源的极性。 3. 用万用表判断三极管的好坏。三极管可以等效为两个串接的二极管,见下图a。先按测量二极管的方法确定两个PN结的好坏,如果是好的则可进一步确定三极管的基极,由此也可确定三极管的类型(PNP、NPN)。指针式万用表判断三极管的发射极和集电极是利用了三极管的电流放大特性,测试原理见图b,如被测三极管是NPN型管,先设一个极为集电极,与万用表的黑表笔相连接,用红表笔接另一个电极,观察好指针的偏转大小。然后用人体电阻代替图b中的R B,用手指捏住C和B极,C和B不要碰在一起,再观察指针的偏转大小,若此时偏转角度比第一次大,说明假设正确。若区别不大,需再重新假设。PNP型管的判别方法与NPN型管相同但极性相反。 4. 打开信号发生器,熟悉各旋钮的作用,然后调出一个1~10V,10多千赫兹的正弦交流电,分别用万用表

VHDL课程设计

本科实验报告 实验名称:数字系统设计与实验(软件部分)

实验一 QuartusII9.1软件的使用 一、实验目的: 1、通过实现书上的例子,掌握QUARTUSII9.1软件的使用. 2、编程实现3-8译码电路以掌握VHDL组合逻辑的设计以及QUARTUSII9.1软件的使用。 二、实验内容 1.十进制加法计数器的VHDL文本及仿真 功能图: VHDL文本: library IEEE; use IEEE.std_logic_1164.all; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity count10 is port(clk,load,en:in std_logic; data_in:in std_logic_vector(3 downto 0); seg:out std_logic_vector(6 downto 0)); end count10; architecture beha of count10 is signal qout:std_logic_vector(3 downto 0); signal q_temp:std_logic_vector(3 downto 0); begin process(clk,load) begin if(load='1')then q_temp<=data_in; elsif(clk'event and clk='1')then

if(en='0')then qout<=qout; elsif(qout="1001")then qout<="0000"; else qout<=qout+1; end if; q_temp<=qout; end if; end process; process(q_temp) begin case q_temp is when"0000"=>seg<="1000000"; when"0001"=>seg<="1111001"; when"0010"=>seg<="0100100"; when"0011"=>seg<="0110000"; when"0100"=>seg<="0011001"; when"0101"=>seg<="0010010"; when"0110"=>seg<="0000010"; when"0111"=>seg<="1111000"; when"1000"=>seg<="0000000"; when"1001"=>seg<="0010000"; when others=>seg<="0001000"; end case; end process; end beha; 功能仿真流程及结果: 全编译通过后,进行仿真 新建波形文件,在其中添加所需节点。将clk设置为时钟信号,将en设置为高电平,将load 设置为低电平,将data_in设置为想要预置的数值。 运行Generate Functional Simulation Nest List命令产生能仿真的网标文件。点击Start Simulation开始模拟仿真 仿真结果:

VHDL实验报告

专用集成电路实验报告 13050Z01 1305024237 刘德文

实验一开发平台软件安装与认知实验 实验内容 1、本实验以三线八线译码器(LS74138)为例,在Xilinx ISE 9.2软件平台上完成设计 电路的VHDL文本输入、语法检查、编译、仿真、管脚分配和编程下载等操作。下载芯片选择Xilinx公司的CoolRunner II系列XC2C256-7PQ208作为目标仿真芯片。 2、用1中所设计的的三线八线译码器(LS74138)生成一个LS74138元件,在Xilinx ISE 9.2软件原理图设计平台上完成LS74138元件的调用,用原理图的方法设计三线八线译 码器(LS74138),实现编译,仿真,管脚分配和编程下载等操作。 源程序: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; -- Uncomment the following lines to use the declarations that are -- provided for instantiating Xilinx primitive components. --library UNISIM; --use UNISIM.VComponents.all; entity ls74138 is Port ( g1 : in std_logic; g2 : in std_logic; inp : in std_logic_vector(2 downto 0); y : out std_logic_vector(7 downto 0)); end ls74138; architecture Behavioral of ls74138 is begin process(g1,g2,inp) begin if((g1 and g2)='1') then case inp is when "000"=>y<="00000001"; when "001"=>y<="00000010";

15电力电子实验指导书

《电力电子技术》 实 验 指 导 书

实验一锯齿波同步移相触发电路实验 一、实验目的 (1)加深理解锯齿波同步移相触发电路的工作原理及各元件的作用。 (2)掌握锯齿波同步移相触发电路的调试方法。 二、实验所需挂件及附件 三、实验线路及原理 锯齿波同步移相触发电路的原理图参见挂件说明。锯齿波同步移相触发电路由同步检测、锯齿波形成、移相控制、脉冲形成、脉冲放大等环节组成,其工作原理可参见挂件说明和电力电子技术教材中的相关内容。 四、实验内容 (1)锯齿波同步移相触发电路的调试。 (2)锯齿波同步移相触发电路各点波形的观察和分析。 五、预习要求 (1)阅读电力电子技术教材中有关锯齿波同步移相触发电路的内容,弄清锯齿波同步移相触发电路的工作原理。 (2)掌握锯齿波同步移相触发电路脉冲初始相位的调整方法。 六、思考题 (1)锯齿波同步移相触发电路有哪些特点? (2)锯齿波同步移相触发电路的移相范围与哪些参数有关? (3)为什么锯齿波同步移相触发电路的脉冲移相范围比正弦波同步移相触发电路的移相范围要大? 七、实验方法 (1)将DJK01电源控制屏的电源选择开关打到“直流调速”侧,使输出线电压为200V(不能打到“交流调速”侧工作,因为DJK03-1的正常工作电源电压为

220V 10%,而“交流调速”侧输出的线电压为240V。如果输入电压超出其标准工作范围,挂件的使用寿命将减少,甚至会导致挂件的损坏。在“DZSZ-1型电机及自动控制实验装置”上使用时,通过操作控制屏左侧的自藕调压器,将输出的线电压调到220V左右,然后才能将电源接入挂件),用两根导线将200V交流电压接到DJK03-1的“外接220V”端,按下“启动”按钮,打开DJK03-1电源开关,这时挂件中所有的触发电路都开始工作,用双踪示波器观察锯齿波同步触发电路各观察孔的电压波形。 ①同时观察同步电压和“1”点的电压波形,了解“1”点波形形成的原因。 ②观察“1”、“2”点的电压波形,了解锯齿波宽度和“1”点电压波形的关系。 ③调节电位器RP1,观测“2”点锯齿波斜率的变化。 ④观察“3”~“6”点电压波形和输出电压的波形,记下各波形的幅值与宽 度,并比较“3”点电压U 3和“6”点电压U 6 的对应关系。 (2)调节触发脉冲的移相范围 将控制电压U ct 调至零(将电位器RP2顺时针旋到底),用示波器观察同步电压 信号和“6”点U 6的波形,调节偏移电压U b (即调RP3电位器),使α=170°,其波 形如图2-1所示。 图2-1锯齿波同步移相触发电路 (3)调节U ct (即电位器RP2)使α=60°,观察并记录U 1 ~U 6 及输出“G、K” 脉冲电压的波形,标出其幅值与宽度,并记录在下表中(可在示波器上直接读出,读数时应将示波器的“V/DIV”和“t/DIV”微调旋钮旋到校准位置)。 (4)

EDA综合课程设计实验报告

EDA综合课程设计实验报告 题目:设计一个全双工UART电路院系:XXXX学院 学号:XXXXX 姓名:严XX 教师:林XX 时间:2012.06.02

1 课程设计的摘要原理 (2) 2 设计一个全双工UART电路,具体要求如下: (6) 3.UART设计 (7) 3.1 UART结构 (7) 3.2 UART的帧格式 (8) 4 UART的Verilog HDL语言设计 (9) 4.1 UART分频器 (9) 4.2UART发送模块 (10) 4.3 UART的接收模块 (14) 4.4 UART的硬件测试 (18) 5 课程设计总结 (19)

1摘要 UART协议是数据通信及控制系统中广泛使用的一种全双工串行数据传输协议,在实际工业生产中有时并不使用UART的全部功能。只需将其核心功能集成即可。波特率发生器、接收器和发送器是UART的三个核心功能模块,利用Vefilog-HDL语言对这三个功能模块进行描述并加以整合UART(即Universal AsynchronousReceiver Transmitter 通用异步收发器)是广泛使用的串行数据传输协议。UART允许在串行链路上进行全双工的通信。串行外设用到RS232-C异步串行接口,一般采用专用的集成电路即UART实现。如8250、8251、NS16450等芯片都是常见的UART器件,这类芯片已经相当复杂,有的含有许多辅助的模块(如FIFO),有时我们不需要使用完整的UART的功能和这些辅助功能。或者设计上用到了FPGA/CPLD器件,那么我们就可以将所需要的UART功能集成到FPGA内部。使用VHDL或Veriolog -HDL将UART的核心功能集成,从而使整个设计更加紧凑、稳定且可靠。本文应用EDA技术,基于FPGA/CPLD器件设计与实现UART。 实际应用上,有时我们不需要使用完整的UART的功能和这些辅助功能。使用Verilog-HDL将所需要的UART的核心功能集成到FPGA/CPLD内部,就可以实现紧凑、稳定且可靠的UART数据传输。这样,既可以满足实际的应用,实现所要求的简单的通信和控制,又能够去除更多不需要的繁杂复杂的功能实现。 一、UART的原理 串行通信是指外部设备和计算机间使用一根数据线(另外需要地线,可能还需要控制线)进行数据传输的方式。数据在一根数据线上一位一位传输,每一位数据都占据一个固定的时间长度。与并行通信方式相比,串行通信方式的传输速度较慢,但这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,因此得到了广泛的应用。 基本的UART只需要发送和接收两条数据线就可以完成数据的全双工通信,其基本功能是在发送端将控制器通过总线传过来的并行数据,以设定的格式,设定的频率串行地传输出去,并同时在接收端将串行接收到的数据,转换成相应的并行数据发送出去。UART的基本帧格式如图1所示。其中,起始位总是逻辑O状态,停止位总是逻辑l状态,其持续时间可选为1位、1.5位或2位,其数据位可为5、6、7、8位,校验位可根据需要选择奇校验位,偶校验位或无校验位。

vhdl实验报告--蜂鸣器

VHDL 实验报告 一、实验目的 1、掌握蜂鸣器的使用; 2、通过复杂实验,进一步加深对VHDL语言的掌握程度。 二、实验原理乐曲都是由一连串的音符组成,因此按照乐曲的乐谱依次输出这些音符所对应的频率,就可以在蜂鸣器上连续地发出各个音符的音调。而要准确地演奏出一首乐曲,仅仅让蜂鸣器能够发声是不够的,还必须准确地控制乐曲的节奏,即每个音符的持续时间。由此可见,乐曲中每个音符的发音频率及其持续的时间是乐曲能够连续演奏的两个关键因素。 乐曲的12 平均率规定:每2 个八度音(如简谱中的中音1 与高音1)之间的频率相差1 倍。在2个八度音之间,又可分为12个半音。另外,音符A(简谱中的低音6)的频率为440Hz, 音符B到C之间、E到F之间为半音,其余为全音。由此可以计算出简谱中从低音I至高音1 之间每个音符的频率,如表所示。 音名频率/Hz 音名频率/Hz 音名频率/Hz 低音1 中音1 高音1 低音2 中音2 高音2 低音3 中音3 高音3 低音4 中音4 高音4 低音5 392 中音5 784 高音5 1568 低音6 440 中音6 880 高音6 1760 低音7 中音7 高音7 表简谱音名与频率的对应关系 产生各音符所需的频率可用一分频器实现, 由于各音符对应的频率多为非整数, 而分频系数又不能为小数, 故必须将计算得到的分频数四舍五入取整。若分频器时钟频率过低, 则由于分频系数过小, 四舍五入取整后的误差较大;若时钟频率过高,虽然误差变小,但分频数将变大。实际的设计应综合考虑两方面的因素, 在尽量减小频率误差的前提下取合适的时钟频率。实际上,只要各个音符间的相对频率关系不变,演奏出的乐曲听起来都不会走调。 音符的持续时间须根据乐曲的速度及每个音符的节拍数来确定。因此, 要控制音符的音 长,就必须知道乐曲的速度和每个音符所对应的节拍数, 本例所演奏的乐曲的最短的音符为四分音符,如果将全音符的持续时间设为1s 的话,那么一拍所应该持续的时间为秒,则只需要提供一个4HZ的时钟频率即可产生四分音符的时长。 本例设计的音乐电子琴选取40MHZ的系统时钟频率。在数控分频器模块,首先对时钟频率进行40分频,得到1MHZ的输入频率,然后再次分频得到各音符的频率。由于数控分频器 输出的波形是脉宽极窄的脉冲波, 为了更好的驱动蜂鸣器发声, 在到达蜂鸣器之前需要均衡占空比, 从而生成各音符对应频率的对称方波输出。这个过程实际上进行了一次二分频, 频率变为原来的二分之一即。 因此,分频系数的计算可以按照下面的方法进行。以中音1为例,对应的频率值为 523. 3Hz,它的分频系数应该为: 0.375MHZ 0.375 106 716 523.3 523.3

相关文档