哈工大数电大作业
- 格式:doc
- 大小:6.87 MB
- 文档页数:24
数字电路大作业题目说明:以下题目任选一个,以小组形式合作完成,组内人数是2~3人,最佳组合为3人。
题目1:电子密码锁的设计[设计要求](1)设计一个开锁密码至少为4位数字(或更多)的密码锁。
(2)当开锁按扭开关(可设置8位或更多,其中只有4位有效,其余位为虚设)的输入代码等于所设密码时启动开锁控制电路,并且用绿灯亮、红灯灭表示开锁状态。
(3)从第一个按扭触动后的5秒内若未能将锁打开,则电路自动复位并发出报警信号,同时用绿灯灭、红灯亮表示关锁状态。
(4)密码锁上带有数字时钟,当操作者开始按动按钮能进行倒计时显示。
注:附加功能根据本人能力自行添加(如:密码锁中的4位密码可以修改,等等)题目2:乒乓球比赛模拟机的设计乒乓球比赛模拟机用发光二极管(LED)模拟乒乓球运动轨迹,是由甲乙双方参赛,加上裁判的三人游戏(也可以不用裁判)。
[设计要求](1)至少用8个LED排成直线,以中点为界,两边各代表参赛双方的位置,其中一个点亮的LED(乒乓球)依次从左到右,或从右到左移动,“球”的移动速度可以调节。
(2)当球(被点亮的那只LED)移动到某方的最后一位时,参赛者应该果断按下自己的按扭使“球”转向,即表示启动球拍击中,若行动迟缓或超前,表示未击中或违规,则对方得一分。
(3)设计甲乙双方自动记分电路,用数码管显示得分,每记满11分为一局。
(4)甲乙双方各设一个发光二极管表示拥有发球权,每得5分自动交换发球权,拥有发球权的一方发球才能有效。
(5)能显示发球次数。
注:附加功能根据本人能力自行添加(如:一方得分,电路自动提示3秒,此期间发球无效,等铃声停止后方可比赛等等)题目3:液体点滴速度监控装置的设计设计医用点滴速度自动控制装置。
假设已在漏斗处设置了一个由红外发射、接收对管构成的传感器,将点滴信号非电量转换成电脉冲信号。
[设计要求](1)检测点滴速度,并与预定速度值比较,通过控制电机的转向使吊瓶作上升、下降、停止的动作(可以使用红绿黄指示灯表示),从而调整点滴速度,直到实测数据和预置数据相等时为止。
数字时钟
一、设计要求
设计一个数字时钟,具有计时和置位功能。
二、设计方案
1、用1HZ的信号发生器作为信号的产生。
2、利用74LS161改进成十进制计数器控制时钟秒钟和分钟的个位。
3、利用74LS161改进成六进制计数器控制时钟秒钟和分钟的十位。
4、利用74LS161改进成六二十四进制计数器控制时钟小时。
5、利用74LS161 Cr 端进行清零设置。
6、利用74LS47驱动七段LED显示器。
7、相关引脚图
三、设计电路
正常工作时j1和j3均接高电平,需要置位时,将j1和j3换挡,每个74LS161置位端(A B C D)接上相应的数据即可
四、设计总结
本次试验在仿真软件上成功运行,设计过程中出现部分错误,经过调试,最终成功调试出所需功能的电路。
此次大作业,加深了我对电路知识的掌握,我进一步了解了几种元件,对部分芯片的使用达到了熟悉的程度。
对它们的应用有了更多的想法。
还有对出现各种问题时的分析处理能力。
为以后设计电路给了我一个启蒙。
今后我会更加努力,在听课的同时更好地利用身边的各种资源,努力在电路方面有更多的进步。
数字电子技术应用Verilog HDL设计计数器学院:航天学院班级:学号:姓名:教师:设计要求:利用Verilog HDL设计一个以自己学号后三位为模的计数器。
设计步骤:首先我的学号后三位为114,因此计数器范围是0到113一共114个数。
然后根据此要求编写功能程序以及激励源的相关程序,第三步在modelsim下进行实验调试,看所编程序能否实现预期功能,然后再把相关实验数据截图记录。
程序代码:modulejishuqi(out,reset,clk);output [7:0] out;inputreset,clk;reg [7:0] out;always @(posedgeclk)beginif(!reset)out<=8'h00;else if(out>=113)out=8'h00;else out<=out+1;endendmodule激励源设置程序:`timescale 1 ns/ 1 psmodulejishuqi_test();regclk;reg reset;wire [7:0] out;jishuqi i1 (.clk(clk),.out(out),.reset(reset));initialbegin#1 clk=0;#10 reset=0;#40 reset=1;endalways #20 clk=~clk ;endmoduleModelsim仿真波形图:注二进制数01110001化成十进制数为113,因此得到了正确的波形图。
RTL ViewerTechnology Map Viewer。
模电大作业(一)设计题目由AD590组成的测温电路院系电气工程及其自动化班级设计者学号指导老师设计时间由AD590组成的测温电路【摘要】:AD590是AD公司利用PN结正向电路与温度的关系制成的电流输出型两端温度传感器。
由于该器件具有良好的线性特性和互换性,因此测量精度高并具有消除电流波动的特性。
本文根据电流电压转换原理采用AD590设计了一个简单的温度测量电路。
【关键词】:AD590,测温,电流电压转换电路1.任务:利用AD590设计一个温度测量电路。
2.设计要求:(1)测量温度范围在0-30℃,输出电压上限5V。
(2)电阻选用标准值。
(3)说明所选运放型号,管脚图。
(4)AD590管脚图。
(5)对部分或全部电路进行仿真。
1.理论分析(1)AD590简介集成温度传感器AD590是一种电流型二端元件,有“+”“-”两个有效引脚,给这两个引脚提供电压后,其通过的电路与AD590的温度成正比,AD590管脚图如图1所示,最后一个引脚为传感器外壳,可悬空或者接地(气屏蔽作用)。
AD590的基本参数(1)测温范围- 55℃~+l50℃;(2)线性电流输出lμA/ K;(3)线性度好,满刻度范围为±0 .3℃;(4)电源电压范围4 -30 V,当电源电压在5 ~10V之间,电压稳定度为l %时,所产生的误差只有±0.01℃;(5)电阻采用激光修刻工艺,使在+25℃(298.2K)时,器件输出298.2μA;(6)功率损耗低。
由参数知,电流I与温度成线性关系,温度每增加1℃,电流I随之增加1µA。
在制造时按照热力学温度标定,即在0℃时,AD590的电流为I=273µA。
电流I(µA)与温度t(℃)的关系可用函数(数值关系)表示为I=273+t。
(2)测温电路设计与参数选择为了将AD590输出的电流信号转化为电压信号,应与AD590串联10K Ω的电阻,则在0℃时电阻上的压降为2.73V ,温度每增加1℃,电阻上的压降增加10mV ,为了使温度为0℃是的输出电压为0V ,应加入偏移量,来抵消此时的AD590输出。
一、选择与填空(共8分)1.函数表达式Y =C D C B A +++,则其对偶式为(不必化简): Y '= 。
2.图1-2为CMOS 工艺数字逻辑电路,写出F 的表达式:F = 。
Fo /mVu u图1-2 图1-33.图1-3为4位 (逐次逼近型、双积分型、流水线型)A/D 转换器的转换示意图,转换结果为 。
4.对于一个8位D/A 转换器,若最小输出电压增量为0.01V ,当输入代码为01001101时,输出电压u o = V ,分辨率= 。
5.已知时钟脉冲频率为f cp ,欲得到频率为0.25f cp 的矩形波,哪种电路一定无法实现该功能( )A .四进制计数器;B .四位二进制计数器;C .单稳态触发器;D .施密特触发器。
6.某EPROM 有8条数据线,10条地址线,其存储容量为 字节。
一、(8分)每空1分1. ()A B CDC +;2. X A XB +或X B A F X ;3. 逐次逼近型,0101;4. 0.77V ,8121-或0.0039; 5. D ; 6. 210二、回答下列问题(共10分)1.电路如图2-1所示。
V 5CC =V ,R 取值合适,写出F 的表达式(不必化简)。
3210图2-1解: 3210F ABS ABS ABS ABS =⋅⋅⋅————————————————3分2.卡诺图化简:(),,,(0,1,2,3,5,8)P A B C D m =∑,约束条件为:0ABD BCD ABC ++= 解:AB CD000111100001111011ΦΦΦ0111001ΦΦ——————————2分P AD BD =+——————————————1分3.在图2-3中,用一片74LS160和一片74LS161,配合必要的逻辑门电路,构成128进制计数器。
要求:使用置数方式,且74LS160为低位芯片,74LS161为高位芯片。
Q D 74LS160RCO Q C Q B Q A ET EP D C B A CR LD CPQ D RCO Q C Q B Q A ET EP D C B A CR LDCP74LS161图2-3解:Q D 74LS160RCO Q C Q B Q A ET EP D C B A CR LDCPQ D RCO Q C Q B Q A ET EP D CB A CR LDCP74LS161111CP——4分三、(10分)一个保险箱有3个按键,当3个键都不按下时,保险箱关闭,不报警;当只有一个按键按下时,保险箱仍关闭,但报警;当有2个按键按下时,保险箱打开,不报警;当三个按键同时按下时,保险箱打开,但要报警。
哈工大电大数字电子技术基础大作业
H a r b i n I n s t i t u t e o f T e c h n o l o g y
数字电子技术基础大作业
课程名称:数字电子技术基础
设计题目:血型与状态机
院系:
班级:
设计者:
学号:
哈尔滨工业大学
血型逻辑电路设计
一实验目的
1.掌握采用可编程逻辑器件实现数字电路与系统
的方法。
2.掌握采用Xilinx_ISE软件开发可编程逻辑器件
的过程。
3.学会设计血型能否输血的数字电路。
4.掌握Verilog HDL描述数字逻辑电路与系统的方
法。
二设计要求
1.采用BASYS2开发板开关,LED,数码管等制作验
证能否输血的电路。
2.采用Xilinx_ISE软件进行编程、仿真与下载设
计到BASYS2开发板。
三电路图
1.电路模块图(简化)
应用:
2.内部电路组成(简化)。
一、实验内容设计一个二阶压控型低通滤波器,要求通带增益为2,截止频率为2kHz ,可以选择0.01F μ的电容器,阻值尽量接近实际计算值。
电路设计完后,画出频率响应曲线,并采用Multisim 进行仿真分析。
二、原理分析给定电容值0.01uF ,计算得:43R R = = 10ΩK ,选取1R = 2R = 39ΩK 按照滤波器的工作频带,滤波器可分为低通滤波器(LPF )、高通滤波器(HPF )、带通滤波器(BPF )、带阻滤波器(BEF )几种。
按滤波器传递函数的极点数又分为一阶滤波器、二阶滤波器等。
如果滤波器仅由无源元件(电阻、电容和电感)组成,则称之为无源滤波器;若滤波器含有有源元件(晶体管、集成运放等),则称之为有源滤波器。
由阻容元件和运算放大器组成的滤波电路称为RC 有源滤波器。
由于集成运放有带宽的限制,目前RC 有源滤波器的工作频率比较低,一般不超过1MHz 。
1、 有源低通滤波器(LPF )低通滤波器允许输入信号中低于截止频率的低频或直流分量通过,抑制高频分量。
有源低通滤波器是以RC 无源低通滤波器为基础,与集成运放连接而成。
2、 二阶压控型低通滤波器二阶压控型有源低通滤波器如下图所示。
图 1. 二阶压控型低通滤波器原理图因为电容器C1的接地端改为接运放输出端,引入了正反馈,由于在通带内电容器视为“开路”,因此C1的改接不影响滤波器的通带电压放大倍数,即11up RfA R =+。
为简化计算,令23,12R R R C C C ====,根据“虚短”和“虚断”特征及叠加定理可解得传递函数:2()()1(3)(sCR)up o us I up A u s A u s A sCR ==+-+ 令s j ω=,得滤波器的频率响应表达式:21()(3)upu up o oA A f f j A f f =-+-式中12o f RCπ=,令21()(3)H H up o o f f j A f f -+-=解得该滤波器的上限截止频率为 1.272H o o f f f =≈ 定义有源低通滤波器的品质因数Q 为o f f =时电压放大倍数的模与通带电压放大倍数之比,即13upQ A =- 实际应用,Q 的调节范围0100Q ≤≤,一般选取1Q =附近的值。
班级:学号:姓名:一、利用Verilog HDL设计一个电路,对输入的一串二进制数,用于检测序列中连续3个或者3个以上的1,状态转换图如图所示。
状态转换表如图所示由题目要求可知,选择Moore型状态机实现功能。
通过quartusII 仿真验证功能。
源程序如下:module zuoye_1(clk,din,op);input clk,din;output op;reg[1:0]current_state,next_state;reg op;parameter S0=2'b00,S1=2'b01,S2=2'b10,S3=2'b11;always@(posedge clk)begincurrent_state <= next_state;endalways@(current_state or din)begincase(current_state)S0: beginop=0;if(din==0)next_state=S0;elsenext_state=S1;endS1: beginop=0;if(din==0)next_state=S0;elsenext_state=S2;endS2: beginop=0;if(din==0)next_state=S0;elsenext_state=S3;endS3: beginop=1;if(din==0)next_state=S0;elsenext_state=S3;enddefault:beginop=0;next_state=S0;endendcaseendendmodule编写激励文件如下:预置输入为:1001101110111101111100001101110`timescale 1 ns/ 1 psmodule cj_1_vlg_tst();reg clk;reg din;wire op;cj_1 i1 (.clk(clk),.din(din),.op(op));initialbeginclk=0;din=1; 1001101110111101111100001101110 #1 din=0;#2 din=1;#2 din=0;#1 din=1;#3 din=0;#1 din=1;#4 din=0;#1 din=1;#5 din=0;#1 din=0;#1 din=0;#2 din=1;#2 din=0;#1 din=1;#3 din=0;#1 $stop();$display("Running testbench");endalwaysbegin#(0.5) clk=~clk;endendmodule以下为仿真逻辑原理图:RTL VIEWERTechnology map viewer(mapping)Technology map viewer(fitting)以下为仿真波形图:。
电工学大作业集成运算放大器电路分析班号:1308106学号:1130810607姓名:崔志鹏一、集成运算放大器概述集成运算放大器是一种集成电路形式的高性能的放大电路器件。
因其最初多用于模拟信号的运算,所以被称为集成运算放大器,亦简称集成运放或运放。
集成运算放大器内部是一个具有高放大倍数的多级直接耦合放大电路,它有两个输入端和一个输出端,其内部电路由四部分组成,包括输入级、中间级、输出级和偏置电路,如图一。
图一输入级是运放内部电路的第一级,一般采用高性能差分放大电路,要求具有很强的抑制共模信号的能力,差模放大倍数大,输入电阻高。
中间级主要进行电压放大,电压放大倍数应尽量大,一般由若干级共发射极(或共源极)放大电路组成。
输出级是运放内部电路的最后一级,要求其电压输出范围大,输出电阻小,负载驱动能力强。
偏置电路的作用是为上述的各级放大电路设置静态工作点。
二、理想运算放大器为便于分析计算,通常将集成运放看成是理想运算放大器。
即将实际的集成运算放大器性能指标理想化,具体而言有如下几项:开环差模电压放大倍数∞=od A ; 差模输入电阻∞=id r ; 输出电阻0=o r ;共模抑制比∞=CMR K ,等等。
三、理想运算放大器与实际运算放大器在计算时的误差分析k Ω10k Ω20V2=i u ou 1R fR图二图二为一理想运算放大器,可知其开环差模电压放大倍数∞=od A 。
k Ω10k Ω20M Ω20Ω5+_d u dA u u +_iu ou +_A B1R fR idr or图三图三为一实际运算放大器,右图可知其开环电压放大倍数为u A ,差模输入电阻Ω=M r id 2,。
可见其差模输入电阻不为无穷大,输出电阻不为零。
下面进行具体的公式计算分析。
对于节点A ,可知k20k 2000k 10BA A A i V V V V u -+=-,整理得B A i 32V V u -=①。
对于节点B ,可知 A B B d20k 50u V V V A u --=,1A >>u 且d A u V =-,整理得A B A 0u V V +≈,即BA uV V A =-②。
宜兴市张渚职业高级中学 数字电路考试试卷(5)(注意:答题一律答在答题纸上,答在草稿纸或试卷上一律无效)班级 姓名 学号 成绩一、选择填空题(30分)(注意:每题可能不止一个答案,全部答对得分) 1.n 个变量函数的最小项是 ( ) 。
A. n 个变量的积项,它包含全部n 个变量 B. n 个变量的和项,它包含n 个变量C.每个变量都以原、反变量的形式出现,且仅出现一次D. n 个变量的和项,它不包含全部变量 2.n 个变量函数的最大项是( ) 。
A. n 个变量的积项,它包含全部n 个变量 B. n 个变量的和项,它包含n 个变量C.每个变量都以原、反变量的形式出现,且仅出现一次D. n 个变量的和项,它不包含全部变量 3.逻辑函数()()()()()=++++++++++=C B A C B A C B A C B A C B A F ( ) 。
A.()4,3,2,1,0M ∏ B. ()5,6,7m ∑ C.()4,3,2,1,0m ∑ D. A(B+C)4.逻辑函数C B A F ⊕⊕=的对偶式为 ( ) 。
A. C B A ⊕⊕B. A ⊙B ⊙CC. C B A ⊕⊕D. A ⊙B ⊙C 5.逻辑函数()()()()=++++=E A D A C A B A F ( ) 。
A. AB+AC+AD+AE B. A+BCED C. (A+BC)(A+DE) D. A+B+C+D+E6.求一个逻辑函数F 的对偶式,可将F 中的( )。
A 、“·”换成“+”,“+”换成“·”B 、原变量换成反变量,反变量换成原变量C 、变量不变D 、常数中的“0”换成“1”,“1”换成“0” 7.组合逻辑电路一般由( )组合而成。
A 、门电路B 、触发器C 、计数器D 、寄存器 8.下列逻辑电路中,不是组合逻辑电路的有( )A 、译码器B 、编码器C 、全加器D 、寄存器 9.最小项D C AB 的逻辑相邻项是( )A 、ABCDB 、D BC A C 、D C AB D 、D C B A10.一个十六路数据选择器,其地址输入(选择控制输入)端有( )个。
第6章 触发器【6-1】已知由与非门构成的基本RS 触发器的直接置“0”端和直接置“1”端的输入波形如图6.1所示,试画出触发器Q 端和Q 端的波形。
R d Sd Q Q图 6.1解:基本RS 触发器Q 端和Q 端的波形可按真值表确定,要注意的是,当d R 和d S 同时为“0”时,Q 端和Q 端都等于“1”。
d R 和d S 同时撤消,即同时变为“1”时,Q 端和Q 端的状态不定。
见图6.1(b )所示,图中Q 端和Q 端的最右侧的虚线表示状态不定。
R d S d QQ不定状态图6.1(b ) 题6-1答案的波形图【6-2】触发器电路如图6.2(a)所示,在图(b)中画出电路的输出端波形,设触发器初态为“0”。
Qd S d Q QR(a) (b)图6.2解:此题是由或非门构成的RS触发器,工作原理与由与非门构成的基本RS 触发器一样,只不过此电路对输入触发信号是高电平有效。
参照题6-1的求解方法,即可画出输出端的波形,见图6.2(c)。
d S d R 不定状态图6.2(c)【6-3】试画出图6.3所示的电路,在给定输入时钟作用下的输出波形,设触发器的初态为“0”。
“YZCP图 6.3解:见图6.3(b)所示,此电路可获得双相时钟。
Q Q CP YZ图6.3(b)【6-4】分析图6.4所示电路,列出真值表,写出特性方程,说明其逻辑功能。
Q图6.4解:1.真值表(CP =0时,保持;CP =1时,如下表)D n Q n Q n+1 0 0 0 0 1 0 1 0 1 1 1 12.特性方程Q n+1=D n3.该电路为锁存器(时钟型D 触发器)。
CP =0时,不接收D 的数据;CP =1时,把数据锁存,但该电路有空翻。
【6-5】试画出在图6.5所示输入波形的作用下,上升和下降边沿JK 触发器的输出波形。
设触发器的初态为“0”。
CP J K图 6.5解:见图6.5(b)所示。
CP J KJ K QQ图6.5(b)【6-6】试画出图P6.6(a)所示电路,在图6.6(b)给定输入下的Q 端波形,设触发器初态为“0”。
一.实验题目1.实验要求:用三个变量设计一个组合逻辑电路,并仿真。
2.实验题目设计:设计三人投票系统。
现有老师A、学生B、学生C,他们对于一个科技创新项目是否通过中期检查进行举手表决。
老师一票算1.5分,学生一票算1分。
该项目若在2分以上,通过中期检查;刚好2分,没有通过但可以延期检查;低于2分终止项目。
用Silinx的BASY2软件设计原理图并在开发板上进行实验。
二.题目分析1.对已知实际问题进行逻辑抽象,确定输入、输出变量。
输入变量:老师A、学生B、学生C。
投票为“1”,不投票为“0”。
输出变量:项目通过情况P。
项目延期检查Q。
项目终止R。
若项目通过,P=1;若项目不通过,P=0。
若延期,Q=1;若不延期,Q=0。
若终止项目,R=1,若不终止项目,R=0。
2.列出真值表。
A B C P Q R0 0 0 0 0 10 0 1 0 0 10 1 0 0 0 10 1 1 0 1 01 0 0 0 0 11 0 1 1 0 01 1 0 1 0 01 1 1 1 0 0表1 真值表3.写出逻辑表达式P=AC+ABQ=ABC+++++R=B C A B A C4.在xilinx 13.4上画出原理图图1 原理图三.电路仿真原理图翻译过来的硬件描述语言如下:// Inputsreg A;reg B;reg C;// Outputwire P;wire Q;wire R;// Bidirs// Instantiate the UUTsanrenjushoubiaojue UUT (.A(A),.B(B),.C(C),.P(P),.Q(Q),.R(R));// Initialize Inputs// `ifdef auto_initinitial beginA = 0;B = 0;C = 0;#100;A = 0;B = 0;C = 1;#100;A = 0;B = 1;C = 0;#100;A = 0;B = 1;C = 1;#100;A = 1;B = 0;C = 0;#100;A = 1;B = 0;C = 1;#100;A = 1;B = 1;C = 0;#100;A = 1;B = 1;C = 1;#100;//`endifendendmodule在软件下仿真的结果如下图:图2 仿真图通过仿真可知,电路原理图设计无误。
数字信号处理上机实验报告学号:姓名:实验题目一1. 实验要求:序列卷积计算(1)编写序列基本运算函数,序列相加、相乘、翻转、求和;(2)使用自定义函数计算序列线性卷积,并与直接计算结果相比较。
两个序列分别为:() 1,05 0,others n nx n≤≤⎧=⎨⎩,()2,030,othersn nx n≤≤⎧=⎨⎩2. 实验过程和步骤:包含题目分析,实验程序和流程图(程序要有必要的注释)3. 实验结果和分析:包含程序运行结果图,结果分析和讨论(一)基本运算函数1.原序列2.序列相加序列相加程序function [y,n]=sigadd(x1,n1,x2,n2)%implements y(n)=x1(n)+x2(n)%---------------------------------------------% [y,n] = sigadd(x1,n1,x2,n2)% y = sum sequence over n, which includes n1 and n2% x1 = first sequence over n1% x2 = second sequence over n2 (n2 can be different from n1)%n=min(min(n1),min(n2)):max(max(n1),max(n2)); %duration of y(n) y1=zeros(1,length(n));y2=y1;y1(find((n>=min(n1))&(n<=max(n1))==1))=x1; %x1 with duration of y y2(find((n>=min(n2))&(n<=max(n2))==1))=x2; %x2 with duration of y y=y1+y2; %sequence addition3.序列相乘序列相乘程序function [y,n]=sigmult(x1,n1,x2,n2)%implements y(n)=x1(n)*x2(n)%---------------------------------------------% [y,n] = sigmult(x1,n1,x2,n2)% y = product sequence over n, which includes n1 and n2% x1 = first sequence over n1% x2 = second sequence over n2 (n2 can be different from n1)%n=min(min(n1),min(n2)):m(min(n1),min(n2)) %duration of y(n)y1=zeros(1,length(n));y2=y1;y1(find((n>=min(n1))&(n<=max(n1))==1))=x1; %x1 with duration of y y2(find((n>=min(n2))&(n<=max(n2))==1))=x2; %x2 with duration of y y=y1.*y2; %sequence multiplication4.序列翻转序列翻转程序function [y,n]=sigfold(x, n)%implements y(n)=x(-n)%--------------------------------------------- % [y,n] = sigfold(x,n)%y=fliplr(x);n=-fliplr(n);5.序列移位序列移位程序function [y,n]=sigshift(x,m,n0)%implements y(n)=x(n-n0)%--------------------------------------------- % [y,n] = sigshift(x,m,n0)%n=m+n0;y=x;主程序x1=[0:5];x2=[0,1,2,3];n1=0:5;n2=0:3;%N=n1+n2-1;figure(1)subplot(211)stem(x1)xlabel('x1')subplot(212)stem(x2)xlabel('x2')title('原序列')x= sigadd(x1,n1,x2,n2);figure(2)stem(x)xlabel('x1+x2')title('序列相加')figure(3)[x,n] = sigfold(x1,n1);stem(n,x)xlabel('x1(-n)')title('序列翻转')[x,n] = sigshift(x,n,2);figure(4)stem(n,x)xlabel('x1(-n+2)')title('序列移位')x= sigmult(x1,n1,x2,n2);figure(5)stem(x)title('序列相乘')xlabel('x1*x2')(二)自定义函数计算线性卷积1.题目分析使用上一题中的序列相乘、翻转和求和子函数计算线性卷积,并与这直接用conv 函数计算的线性卷积结果相比较。
哈工大数字电路大作业2数电大作业(二)1120410104 周胜阳一、题目要求题目:利用Verilog HDL设计一个逻辑控制电路,用于对某备进行模式切换控制,设备模式共三种,控制方式为:a) 直通模式:高电平为直通有效,接地为直通无效;b) 跳频模式:接地为跳频模式有效,高电平跳频无效;c) 调谐模式:接地为调谐模式有效,高电平调谐无效。
设备的同一时刻只有且必须有一个模式有效,其他两个无效。
为防止同时多个模式有效,模式切换之间应有较小的延时,利用按键作为三种模式切换输入(按键最好有消除抖动的措施)二、设计思路1、整体思路:本题可以视为一个Moore型状态机。
通过op的位数控制直通、调谐、调频模式的转换。
当选择直通模式时,op 为100;选择调频模式时,op为001;选择调谐模式时,op 为010。
2、按键消抖:在检测出键闭合后执行一个延时程序,5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。
当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。
本题中,我们将延时设为3个时钟周期三、程序设计1.代码:module zsy2(clk,anjian,out);input clk,anjian;output [2:0] out;reg [2:0] out;reg [2:0] mode1=3'b111,mode0=3'b111;wire anjian_done; //按键触发parameter D=3'b010,Z=3'b100,T=3'b001,; //定义了三个模式Z为直通,T为跳频,D为调谐reg shake1,shake2,shake3; //定义消抖用的三个变量always@(posedge clk) //上升沿触发beginshake1<=anjian;shake2<=shake1;shake3<=shake2;mode1=mode0; //这个模块用于消抖,程序来源于百度out=mode1;endassign anjian_done = (shake1 | shake2 | shake3);always@(anjian_done)begin //下面的部分就是一个状态机,和作业1一样。
H a r b i n I n s t i t u t e o f T e c h n o l o g y数字电子技术基础大作业课程名称:数字电子技术基础设计题目: 血型与状态机院系:班级:设计者:学号:哈尔滨工业大学血型逻辑电路设计一实验目的1.掌握采用可编程逻辑器件实现数字电路与系统的方法。
2.掌握采用Xilinx_ISE软件开发可编程逻辑器件的过程。
3.学会设计血型能否输血的数字电路。
4.掌握Verilog HDL描述数字逻辑电路与系统的方法。
二设计要求1.采用BASYS2开发板开关,LED,数码管等制作验证能否输血的电路.2.采用Xilinx_ISE软件进行编程、仿真与下载设计到BASYS2开发板。
三电路图1.电路模块图(简化)应用:2.内部电路组成(简化)四编程1。
源程序module xuexing(M, N, P, Q, E,F,G,OUT,CTL,clk,bi);input M;input N;input P;output E;output[3:0] F;output[3:0] G;output[7:0] OUT;output[3:0] CTL;reg E;reg[3:0] F;reg[3:0] G;reg[7:0] OUT;reg[7:0] OUT1;reg[7:0] OUT2;reg[7:0] OUT3;reg[7:0] OUT4;reg[3:0]CTL=4’b1110;output bi;reg bi;integer clk_cnt;reg clk_400Hz;always @(posedge clk) //400Hz扫描信号if(clk_cnt==32'd100000)beginclk_cnt 〈= 1'b0;clk_400Hz 〈= ~clk_400Hz;endelseclk_cnt 〈= clk_cnt + 1'b1;//位控制reg clk_1Hz;integer clk_1Hz_cnt; //1Hz发声信号always @(posedge clk)if(clk_1Hz_cnt==32’d2*******—1)beginclk_1Hz_cnt 〈= 1'b0;clk_1Hz 〈= ~clk_1Hz;endelseclk_1Hz_cnt <= clk_1Hz_cnt + 1'b1; always @(posedge clk_400Hz)CTL <= {CTL[2:0],CTL[3]};//段控制always @(CTL)case(CTL)4’b0111:OUT=OUT1;4'b1011:OUT=OUT3;4’b1110:OUT=OUT4;default:OUT=4’hf;endcasealways @(M or N or P or Q)beginE=(P&Q)|(~M&~N)|(~M&Q)|(~N&P); //选择能否输血case(E)1:beginOUT1=8'b10001001;OUT2=8’b01100001;OUT3=8'b01001001;OUT4=8'b11111111;bi=clk_400Hz;end0:beginOUT1=8’b00010011;OUT2=8’b00000011;OUT3=8’b11111111;OUT4=8'b11111111;bi=clk_1Hz;endendcaseendalways @(M or N or P or Q) //显示输入输出血型beginif(M==1&&N==0)F=4’b1000;else if(M==0&&N==1)F=4'b0100;else if(M==1&&N==1)F=4'b0010;elseF=4'b0001;endalways @(M or N or P or Q) //显示输入输出血型beginif(P==1&&Q==0)G=4'b1000;else if(P==0&&Q==1)G=4'b0100;else if(P==1&&Q==1)G=4'b0001;endendmodule2.管脚定义程序NET ”M” LOC=N3;NET ”N" LOC=E2;NET "P” LOC=L3;NET ”Q” LOC=P11;NET "E” LOC=B2;NET "OUT[7]" LOC = L14;NET "OUT[6]” LOC = H12;NET "OUT[5]” LOC = N14;NET ”OUT[4]" LOC = N11;NET ”OUT[3]" LOC = P12;NET "OUT[2]" LOC = L13;NET "OUT[1]” LOC = M12;NET "OUT[0]" LOC = N13;NET ”CTL[3]" LOC = K14;NET ”CTL[2]” LOC = M13;NET ”CTL[1]” LOC = J12;NET "CTL[0]” LOC = F12;NET ”clk” LOC=B8;NET "F[3]" LOC=G1;NET ”F[2]” LOC=P4;NET ”F[1]” LOC=N4;NET "F[0]" LOC=N5;NET "G[3]” LOC=P6;NET "G[2]" LOC=P7;NET "G[1]" LOC=M11;NET "G[0]" LOC=M5;NET ”bi" LOC=B6;五仿真图六下载设计到BASYS2开发板与实物图实物图:附:程序流程:1.基本电路设计用MN表示输入血型,PQ表示受血者血型其中10表示A型,01表示B型,11表示AB型,00表示M N P Q E M N P Q E0 0 0 0 1 1 0 0 0 00 0 0 1 1 1 0 0 1 00 0 1 0 1 1 0 1 0 10 0 1 1 1 1 0 1 1 10 1 0 0 0 1 1 0 0 00 1 0 1 1 1 1 0 1 00 1 1 0 0 1 1 1 0 00 1 1 1 1 1 1 1 1 1MN00 01 11 10PQ00 1 0 0 0=+++表达式为:E PQ MN MQ NP则设计一个四输入一输出的电路其逻辑电路图为通过此电路图,编写程序,把输入引脚定位到开关上,把输出引脚定位到一个LED上便可以完成设计任务.2。
电工大作业——运料小车的电气控制 作者:*** 班号:**** 学号:*****设计课题:运料小车的电气化控制设计背景:1.有一运料小车如右图示,动作过程要求如下:小车可在A 、B 两地分别启动。
A 地启动后,小车先返回限位开关ST1处,停车30s 装料;然后自动驶向B 地,到达限位开关ST2处停车,底门电磁铁动作,卸料30s ;然后返回A 地,停车30s 装料,如此往复。
控制要求:(1)手动操作:能手动控制小车向前运行,向后运行,并能打开小车底门。
(2)连续往返自动控制:当小车启动后,能够自动往返运行。
(3)停车控制:小车在自动往返运行过程中,均可用手动开关令其停车。
再次启动后,小车重复(2)中内容。
设计要求:1.设计该机床的电气控制主电路;2.设计该机床的控制电路;控制电路采用继电接触器控制或可编程控制器实现均可。
3.查阅相关资料,编写详细的电气系统设计说明书,注意规范。
实验器材:熔断器:FU按钮:SB0,SB1,SB2,SB3,SB4,SB5时间继电器:KT1,KT2接触器:KM1,KM2,KM3,KM4行程开关:ST1,ST2电磁铁:KM5说明书:自动操作:按下按钮SB1,KM2通电,并形成自锁。
小车返回行程开关ST1处,此时ST1的常开触点闭合,时间继电器KT2通电,30s 后KT2的延时闭合触点闭合(小车在这时间内装料),KM1通电,小车向ST2处运动。
当运动到ST2后,ST2的常开触点被压合,时间继电器KT1通电,此时,电磁铁KM5通电,底门打开,开始卸料,30s 后KT1的延时闭合触点闭合,小车向ST1运动,如此往复。
按下按钮SB0,机器停止。
手动操作:按下按钮SB2,小车返回ST1处。
按下按钮SB4,小车向ST2运动。
按下按钮SB5,底门打开,开始卸料。
按下按钮SB0,机器停止。
附加:KM1与KM3,KM2与KM4的功能是一样的。
只是一个是自动控制,一个是手动控制。
限位开关 限位开关控制电路:控制电路:请老师点评!如果您认为不可行,请指点一下。
电工电子学大作业数字电子时钟的设计班学号:一实验目的数字电子钟是用数字集成电路构成并有数字显示特点的一种现代计数器。
目前数字电子钟的设计,主要是采用计数器等集成电路构成,大多是由振荡器、计数器、译码器、LED 显示器组成。
译码代替机械式传动,用LED显示器代替指针显示进而显示时间,减小了计时误差。
这种用数字电路实现的电子钟与机械式时钟相比具有更高的准确性和直观性,且使用寿命更长。
因而广泛应用于车站、码头、商店等公共场所。
为了更加详细的了解电子时钟的实现方法,在这次创新实验设计中我选择了做一个电子时钟,希望能够通过这次实验更加深刻地理解和掌握各种进制计数器的构成方式,了解计数器、寄存器在现实生活中的应用。
二总体设计方案数字电子时钟主要是由秒脉冲信号发生器,时分秒计数器,译码显示器等电路构成。
本次实验采取模块化设计方式。
整个电路划分为秒脉冲发生器模块,秒计时器模块,分计时器模块,小时计时器模块和译码显示器模块。
其中秒脉冲发生器由555定时器构成的多谐振荡电路实现,能够产生频率为1Hz的矩形脉冲;分、秒计时器采用60进制计数器,分别由两个74LS161芯片通过级联法构成,小时计时器采取24小时制,由两个74LS90通过级联法构成24进制计数器;译码显示器采用七段显示译码器。
三预计实现功能1显示时间,能够以24小时制显示时分秒;2 时间校正,能够对时分秒分别进行校正。
四实验电路图按照电路的组成原理,实验电路图由三部分构成,分别是秒脉冲发生器部分,时分秒计数器部分,译码显示器部分。
1 秒脉冲发生器模块其中IO1为秒脉冲输出端口。
2 分、秒计时模块其中IO1为脉冲输入端口,IO2——IO9为输出驱动七段显示译码器的信号端口,IO2——IO5为个位,IO6——IO9为十位,数字由小到大分别对应七段显示译码器的A、B、C、D 信号输入端。
IO10为向分钟进位的输出脉冲信号端口。
3 小时计时模块其中IO1为脉冲输入端口,IO2——IO9为输出驱动七段显示译码器的信号端口,IO2——IO5为个位,IO6——IO9为十位。
哈工大数电大作业-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KIIH a r b i n I n s t i t u t e o f T e c h n o l o g y数字电子技术基础大作业课程名称:数字电子技术基础设计题目:血型与状态机院系:班级:设计者:学号:哈尔滨工业大学血型逻辑电路设计一实验目的1.掌握采用可编程逻辑器件实现数字电路与系统的方法。
2.掌握采用Xilinx_ISE软件开发可编程逻辑器件的过程。
3.学会设计血型能否输血的数字电路。
4.掌握Verilog HDL描述数字逻辑电路与系统的方法。
二设计要求1.采用BASYS2开发板开关,LED,数码管等制作验证能否输血的电路。
2.采用Xilinx_ISE软件进行编程、仿真与下载设计到BASYS2开发板。
三电路图1.电路模块图(简化)应用:2.内部电路组成(简化)四编程1.源程序module xuexing(M, N, P, Q, E,F,G,OUT,CTL,clk,bi);input M;input N;input P;input Q;input clk;output E;output[3:0] F;output[3:0] G;output[7:0] OUT;output[3:0] CTL;reg E;reg[3:0] F;reg[3:0] G;reg[7:0] OUT;reg[7:0] OUT1;reg[7:0] OUT2;reg[7:0] OUT3;reg[7:0] OUT4;reg[3:0] CTL=4'b1110;output bi;reg bi;integer clk_cnt;reg clk_400Hz;always @(posedge clk) //400Hz扫描信号if(clk_cnt==32'd100000)beginclk_cnt <= 1'b0;clk_400Hz <= ~clk_400Hz;endelseclk_cnt <= clk_cnt + 1'b1;//位控制reg clk_1Hz;integer clk_1Hz_cnt; //1Hz发声信号always @(posedge clk)if(clk_1Hz_cnt==32'd2*******-1)beginclk_1Hz_cnt <= 1'b0;clk_1Hz <= ~clk_1Hz;endelseclk_1Hz_cnt <= clk_1Hz_cnt + 1'b1; always @(posedge clk_400Hz)CTL <= {CTL[2:0],CTL[3]};//段控制always @(CTL)case(CTL)4'b0111:OUT=OUT1;4'b1011:OUT=OUT2;4'b1101:OUT=OUT3;4'b1110:OUT=OUT4;default:OUT=4'hf;endcasealways @(M or N or P or Q)beginE=(P&Q)|(~M&~N)|(~M&Q)|(~N&P); //选择能否输血case(E)1:beginOUT1=8'b10001001;OUT2=8'b01100001;OUT3=8'b01001001;OUT4=8'b11111111;bi=clk_400Hz;end0:beginOUT1=8'b00010011;OUT2=8'b00000011;OUT3=8'b11111111;OUT4=8'b11111111;bi=clk_1Hz;endendcaseendalways @(M or N or P or Q) //显示输入输出血型beginif(M==1&&N==0)F=4'b1000;else if(M==0&&N==1)F=4'b0100;else if(M==1&&N==1)F=4'b0010;elseF=4'b0001;endalways @(M or N or P or Q) //显示输入输出血型beginif(P==1&&Q==0)G=4'b1000;else if(P==0&&Q==1)G=4'b0100;else if(P==1&&Q==1)G=4'b0010;elseG=4'b0001;endendmodule2.管脚定义程序NET "M" LOC=N3;NET "N" LOC=E2;NET "P" LOC=L3;NET "Q" LOC=P11;NET "E" LOC=B2;NET "OUT[7]" LOC = L14;NET "OUT[6]" LOC = H12;NET "OUT[5]" LOC = N14;NET "OUT[4]" LOC = N11;NET "OUT[3]" LOC = P12;NET "OUT[2]" LOC = L13;NET "OUT[1]" LOC = M12;NET "OUT[0]" LOC = N13;NET "CTL[3]" LOC = K14;NET "CTL[2]" LOC = M13;NET "CTL[1]" LOC = J12;NET "CTL[0]" LOC = F12;NET "clk" LOC=B8;NET "F[3]" LOC=G1;NET "F[2]" LOC=P4;NET "F[1]" LOC=N4;NET "F[0]" LOC=N5;NET "G[3]" LOC=P6;NET "G[2]" LOC=P7;NET "G[1]" LOC=M11;NET "G[0]" LOC=M5;NET "bi" LOC=B6;五仿真图六下载设计到BASYS2开发板与实物图实物图:附:程序流程:1.基本电路设计用MN表示输入血型,PQ表示受血者血型其中10表示A型,01表示B型,11表示AB型,00表示O型。
用E表示能否输血,1表示能,0表示不能。
则卡诺图为:表达式为:E PQ MN MQ NP =+++ 则设计一个四输入一输出的电路 其逻辑电路图为通过此电路图,编写程序,把输入引脚定位到开关上,把输出引脚定位到一个LED 上便可以完成设计任务。
2.项目创新(1)仅使用一个LED 的亮与灭来表示能否输血效果不明显,为了加入一个更明显显示能否输血的指示,所以就用到了Basys2板子上自带的数码管,使其在能够输血时显示yes ,不能输血时显示no 。
观察硬件电路图发现,数码管只由一个片选端控制,所有如果使数码管显示不同字母,则需要利用人类的视觉暂留效应进行循环扫描,来使数码管来显示不同的信息。
(2)为了增强能否输血的提示效果,所以加入一个蜂鸣器,用声音提示能否输血。
当系统开启切能输血时,蜂鸣器输出一低音震荡,当不能输血时,蜂鸣器输出高音报警,提示不能输血。
(3)在加入蜂鸣器报警与数码管之后,使用LED来表示能否输血已经多余,而且别人无法判断输血与受血分别是什么血型,所以把8个LED分成两组,其中第一组表示输血血型,第二组表示受血血型,第一个灯表示A型,第二个灯表示B型,第三个灯表示AB型,最后一个灯表示O型。
时序逻辑电路设计一实验目的1.掌握采用可编程逻辑器件实现数字电路与系统的方法。
2.掌握采用Xilinx_ISE软件开发可编程逻辑器件的过程。
3.学会设计状态机时序逻辑电路。
4.掌握Verilog HDL描述数字逻辑电路与系统的方法。
二设计要求1.采用BASYS2开发板开关,LED,数码管等制作验证能否输血的电路。
2.采用Xilinx_ISE软件进行编程、仿真与下载设计到BASYS2开发板。
三电路图1.电路模块图2.内部电路组成四编程1.源程序module Shixu(clk,op,din,B,C,D,E,F,G,H,I,BI,OUT,CTL);input clk;input din;output BI,op;output[7:0] OUT;output[3:0] CTL;output B,C,D,E,F,G,H,I;reg[7:0] OUT;reg[7:0] OUT1;reg[7:0] OUT2;reg[7:0] OUT3;reg[7:0] OUT4;reg[3:0] CTL=4'b1110;reg B,C,D,E,F,G,H,I;reg[1:0] current_state,next_state;reg op,BI;parameter S0=2'b00,S1=2'b01,S2=2'b10,S3=2'b11;reg clk_1Hz,clk_400Hz;integer clk_1Hz_cnt,clk_cnt;always @(posedge clk)if(clk_1Hz_cnt==32'd2*******-1)beginclk_1Hz_cnt <= 1'b0;clk_1Hz <= ~clk_1Hz;endelseclk_1Hz_cnt <= clk_1Hz_cnt + 1'b1;always @(posedge clk)if(clk_cnt==32'd100000)beginclk_cnt <= 1'b0;clk_400Hz <= ~clk_400Hz;endelseclk_cnt <= clk_cnt + 1'b1;reg clk_05Hz;integer clk_05Hz_cnt;always @(posedge clk)if(clk_05Hz_cnt==32'd5*******-1)beginclk_05Hz_cnt <= 1'b0;clk_05Hz <= ~clk_05Hz;endelseclk_05Hz_cnt <= clk_05Hz_cnt + 1'b1;reg clk_2Hz;integer clk_2Hz_cnt;always @(posedge clk)if(clk_2Hz_cnt==32'd1*******-1)beginclk_2Hz_cnt <= 1'b0;clk_2Hz <= ~clk_2Hz;endelseclk_2Hz_cnt <= clk_2Hz_cnt + 1'b1;reg clk_4Hz;integer clk_4Hz_cnt;always @(posedge clk)if(clk_4Hz_cnt==32'd6250000-1)beginclk_4Hz_cnt <= 1'b0;clk_4Hz <= ~clk_4Hz;endelseclk_4Hz_cnt <= clk_4Hz_cnt + 1'b1;reg clk_40Hz;integer clk_40Hz_cnt;always @(posedge clk)if(clk_40Hz_cnt==32'd1250000-1)beginclk_40Hz_cnt <= 1'b0;clk_40Hz <= ~clk_40Hz;endelseclk_40Hz_cnt <= clk_40Hz_cnt + 1'b1; always @(posedge clk_400Hz)CTL <= {CTL[2:0],CTL[3]};always @ (posedge clk_05Hz)begincurrent_state<=next_state;endalways @(CTL)case(CTL)4'b0111:OUT=OUT1;4'b1011:OUT=OUT2;4'b1101:OUT=OUT3;4'b1110:OUT=OUT4;default:OUT=4'hf;endcasealways @(current_state or din)begincase(current_state)S0:beginop=0;B=1;C=1;D=0;E=0;F=0;G=0;H=0;I=0;OUT1=8'b01001001;OUT2=8'b00000011;OUT3=8'b11111111;OUT4=8'b00000011;BI=clk_1Hz;if(din==0)next_state=S0;elsenext_state=S1;endS1:beginop=0;B=0;C=0;D=1;E=1;F=0;G=0;H=0;I=0;OUT1=8'b01001001;OUT2=8'b10011111;OUT3=8'b11111111;OUT4=8'b00000011;BI=clk_2Hz;if(din==0)next_state=S0;elsenext_state=S2;endS2:beginop=0;B=0;C=0;D=0;E=0;F=1;G=1;H=0;I=0;OUT1=8'b01001001;OUT2=8'b00100101;OUT3=8'b11111111;OUT4=8'b00000011;BI=clk_4Hz;if(din==0)next_state=S0;elsenext_state=S3;endS3:beginop=1;B=0;C=0;D=0;E=0;F=0;G=0;H=1;I=1;OUT1=8'b01001001;OUT2=8'b00001101;OUT3=8'b11111111;OUT4=8'b10011111;BI=clk_40Hz;if(din==0)beginnext_state=S0;endelsenext_state=S3;enddefault:beginop=0;B=1;C=1;D=0;E=0;F=0;G=0;H=0;I=0;next_state=S0;endendcaseendendmodule2.管脚定义程序NET "din" LOC=N3;NET "op" LOC=C6;NET "B" LOC=G1;NET "C" LOC=P4;NET "D" LOC=N4;NET "E" LOC=N5;NET "F" LOC=P6;NET "G" LOC=P7;NET "H" LOC=M11;NET "I" LOC=M5;NET "clk" LOC=B8;NET "BI" LOC=B6;NET "OUT[7]" LOC = L14;NET "OUT[6]" LOC = H12;NET "OUT[5]" LOC = N14;NET "OUT[4]" LOC = N11;NET "OUT[3]" LOC = P12;NET "OUT[2]" LOC = L13;NET "OUT[1]" LOC = M12;NET "OUT[0]" LOC = N13;NET "CTL[3]" LOC = K14;NET "CTL[2]" LOC = M13;NET "CTL[1]" LOC = J12;NET "CTL[0]" LOC = F12;五仿真图六下载设计到BASYS2开发板与实物图实物图:附:为了更好的说明各状态,我对蜂鸣器加入了不同的发声频率区分。