哈工大数电实验
哈工大数电自主设计实验实验报告
姓名班级学号实验日期节次5-6 教师签字成绩实验名称简易数字钟的设计1.实验目的〔1〕用计数器相关知识设计一个简易的数字钟,分和秒为六十进制。
〔2〕了解中规模计数器的应用,通过独立设计和实践掌握74LS00和74LS161等芯片的功能。
〔3〕锻炼动手能力,通过实际操作稳固所学知识,培养学习兴趣。
本实验旨在以计数器为核心,设计和调试出六十进制计数器,并进行两个六十进制计数器的级联。
选用了74LS161芯片来设计一个六十进制计数器,然后和74LS90构成的六十进制计数器进行级联,得到数字时钟。
74LS161芯片为集成同步加法计数器,具有清零、置数、保持等功能,其引脚图如下:74LS00芯片的管脚图如下:用74LS161实现异步进位级联六十进制计数器,高位芯片的时钟端来自低位芯片的输出端Q3,低位芯片采用异步清零法实现十进制计数器,高位芯片也采用同样的方法实现六进制计数器,级联后得到六十进制计数器。
当74LS161所构成六十进制计数器的高位芯片为六进制计数器,当输出为0110时控制清零端进行清零,由0110变为0000,Q3会产生一个下降沿,将Q3端通过一个与非门连到74LS161的CP端,经过与非门后的下降沿变为上升沿,触发74LS161芯计数。
用实验板上输出周期为1s的方波信号,加到低位74LS161芯片计数器的输入端,即可带动整个时钟开始跳动。
分和秒为六十进制,循环计时。
用Multisim13.0绘制实验电路图如下:4. 仪器设备名称、型号数字电子技术实验箱直流稳压电源数字万用表74LS161、74LS00芯片导线假设干接通电源后,秒个位显示0到9,秒十位显示0到5,分个位显示0到9,分十位显示0到5。
最大输出为59分59秒,之后回0,循环计数。
仿真结果如下列图,左上为秒低位,右上为秒高位,左下为分低位,右下为分高位。
6.详细实验步骤及实验结果数据记录〔包括各仪器、仪表量程及内阻的记录〕〔1〕检查导线是否完好〔2〕按电路图所示连好电路。
哈工大数字逻辑电路与系统实验报告
哈工大数字逻辑电路与系统实验报告引言本实验旨在通过对数字逻辑电路与系统的学习与实践,加深对数字逻辑电路原理和应用的理解,掌握数字逻辑电路实验的设计与调试方法。
本报告将详细介绍实验步骤、实验结果以及实验心得体会。
实验目的1.掌握基本的数字逻辑电路设计方法;2.熟悉数字逻辑电路的布线和调试方法;3.学会使用EDA软件进行数字逻辑电路的仿真和验证。
实验器材•FPGA开发板•EDA软件实验过程实验一:逻辑门的基本控制本实验采用FPGA开发板进行实验,以下是逻辑门的基本控制步骤:1.打开EDA软件,新建工程;2.选择FPGA开发板型号,并进行相应配置;3.在原理图设计界面上,依次放置与门、或门、非门和异或门,并连接输入输出引脚;4.面向测试向量实现逻辑门的控制和数据输入;5.运行仿真并进行调试。
实验二:数字逻辑电路实现本实验以4位全加器为例,进行数字逻辑电路的实现,以下是实验步骤:1.打开EDA软件,新建工程;2.选择FPGA开发板型号,并进行相应配置;3.在原理图设计界面上,放置输入引脚、逻辑门和输出引脚,并进行连接;4.根据全加器的真值表,设置输入信号,实现加法运算;5.运行仿真并进行调试。
实验三:数字逻辑电路的串联与并联本实验旨在通过对数字逻辑电路的串联与并联实现,加深对逻辑门的理解与应用。
以下是实验步骤:1.打开EDA软件,新建工程;2.选择FPGA开发板型号,并进行相应配置;3.在原理图设计界面上,放置多个逻辑门,并设置输入输出引脚;4.进行逻辑门的串联与并联连接;5.根据逻辑门的真值表,设置输入信号,进行运算;6.运行仿真并进行调试。
实验结果经过实验测试,实验结果如下:1.实验一:逻辑门的基本控制–与门的功能得到实现;–或门的功能得到实现;–非门的功能得到实现;–异或门的功能得到实现。
2.实验二:数字逻辑电路实现–4位全加器的功能得到实现;–正确进行了加法运算。
3.实验三:数字逻辑电路的串联与并联–逻辑门的串联与并联功能得到实现;–通过逻辑门的串联与并联,实现了复杂的逻辑运算。
哈工大数电自主设计实验报告
姓名班级学号实验日期2014.11. 节次教师签字成绩实验名称出租车计价表的简单逻辑设计1.实验目的(1)掌握并熟练运用集成同步加法计数器74LS160芯片的清零、置数和级联功能的接法,并能综合运用这些接法实现进制改变等功能。
(2)掌握并熟练运用中规模4位二进制码比较器74LS85芯片的数码比较功能。
(3)用若干集成同步加法计数器74LS160芯片和中规模4位二进制码比较器74LS85芯片组合设计出租车计价表电路,使之实现如下功能:起步价为3公里内8元,超过3公里每公里收2元,停车不计费,将最后的钱数通过数码管显示。
2.总体设计方案或技术路线(1)行车距离的模拟:在车轮上安装传感器,获得车轮转动信息,即获得行车距离信息,将出租车行驶距离转换成与之成正比的脉冲个数。
本实验设定每100m产生一个脉冲,脉冲频率反应行车速度,脉冲源由示波器的信号发生器提供。
(2)基本计数电路:,将该脉冲作为74LS160(I)的时钟,通过同步每100米产生一个脉冲CP置数对该脉冲进行5分频,那么得到的脉冲CP为每500m(1里)产生一次。
1作为距离计数单位以便距离累加电路进行距离累加。
CP1作为价格计数单位则为1元/里,以便计价电路进行价格累加;CP1(3)距离累加电路:将74LS160(II)和74LS160(III)通过级联构成一个0~99的加法计数器,作为他们的时钟。
然后分别把对行驶距离进行累计(距离单位:里),其中CP1两个芯片和数码管连接显示行驶距离。
因此该计价表行驶距离最大值为99里,即49.5公里。
(4)比较判断电路:将CP1作为74LS160(IV)的时钟,实现距离累加功能,与(3)不同的是它的输出端QD QCQBQA与74LS85的A3A2A1A相连,而B3B2B1B为0110,意味着6个500m即3公里,当74LS160(IV)输出小于或等于3公里时,A>B端为低电平,当输出大于3公里时,A>B端为高电平。
哈工大-数电自主设计实验-投币电话控制器
姓名班级学号实验日期2013/11/28节次7-8 教师签字成绩实验名称投币电话控制器设计1.实验目的设计一个简易的投币电话控制器。
控制要求:1:通话时间规定为1min。
在实际的投币电话中,通话时间一般设定为3min,在这里考虑到电路的简洁性,和处理问题的方便,设定为1min。
实际上,会设定1min,3min的设定已经十分容易,只需要把74ls192部分的电路重复一下。
2:在通话开始后,系统以绿灯提示。
3:通话结束前20s,系统开始以红灯提醒通话者注意时间,并开始用数字显示通话剩余时间,每通话1s,数字自动减1.显示使用数码管。
4:数字显示为0之前,如不再投币vi,电话将自动切断;如继续投币,通话时间退回60s,开始重新计时。
在电路中,投币以单脉冲输入代替。
2.总体设计方案或技术路线555定时器组成的多谐振荡器作为秒脉冲发生器,作为系统的计时信号,输入74ls192的CP-端口。
当使用者按下单脉冲输入按钮,输入一个单脉冲后(相当于投币后),74ls74的D触发器锁存高电平信号,Q输出端为高电平,点亮绿灯。
同时,单脉冲输入经过反相器后,接到192的LD端。
192芯片共有两个,一个为低位I,一个为高位II,I的置数端DCBA 为0000(0),II的置数端DCBA为0110(6),单脉冲输入后,192被置数,开始减计数。
两个192的输出端分别接到74ls48/47的输入端,来控制数码管的显示。
ls48的~BI端接到译码电路的输出端。
译码电路的作用是在192计数低于20以后,使能ls48驱动数码管显示。
同时,译码电路的输出端接一个红色LED,并通过一个非门接到ls74的D端,控制绿灯灭,来提醒使用者注意时间。
当ls192计数减到0之后,~BO端输出一个负脉冲,该脉冲通过D触发器锁存为低电平,控制三极管来控制整个电路的供电。
3.实验电路图74ls74的管脚图和功能表74ls192的管脚图和功能表74ls48的管脚图和功能表功能表见数字电子技术基础课本,因为较长,在此不列出。
哈工大数电自主设计实验
姓名班级学号实验日期节次教师签字成绩百秒内倒计时器设计1.实验目的1. 培养分析、设计逻辑电路的基本能力。
2. 进一步熟悉常用芯片的基本使用。
3. 熟悉仿真软件Multisim 11.0的基本操作。
2.总体设计方案或技术路线倒计时系统的原理框图如下所示:a.振荡环节和分频/计数控制环节用555电路组成多谐振荡器,产生f=1Hz的信号,即秒脉冲。
计数控制环节是指减1计数器状态为00(即倒计时结束)时,使计数器停止计数。
这时只要使秒脉冲不再持续即可。
这里将判零信号与多谐振荡器输出信号通过与门连接,即可实现该功能。
b.赋初值控制、减1计数器环节和译码显示环节这里用两片双时钟加/减计数器74LS192级联即可实现该部分功能。
将计数器输出端接到LED显示管,即可以实现译码显示功能。
c.判零电路和报警控制通过集成或门将计数器各输出连接起来,只有当计数器状态为00(两片74LS90的输出端QDQCQBQA=0000,此时倒计时输出结束),或门输出结果才为0。
将或门输出信号作为判零信号。
则倒计时结束时,秒脉冲停止,计数器不再计数。
将判零连接至非门后,将非门输出信号连接至小喇叭,这样,倒计时结束后,小喇叭发出声响,实现倒计时结束报警功能。
具体实现过程参见原理分析部分。
3.实验电路图图 1 秒脉冲产生及计数控制电路图 2赋初值、减1计数及判零报警电路图3完整电路4. 仪器设备名称、型号实验箱、子板1台双踪示波器1台数字万用表1台555定时器1片74LS90 1片74LS00 1片74LS192 2片74LS32 2片LED数码管2组(实验箱上集成)小喇叭1个(实验箱上集成)电容、电阻、导线等若干5.理论分析或仿真分析结果a.振荡环节和分频/计数控制环节用555电路组成多谐振荡器,产生f=1Hz的信号,即秒脉冲。
由555定时器构建多谐振荡器的基本原理,多谐振荡器的振荡周期为:这里采用Multisim 11.0对电路进行仿真。
最新哈工程数字电子技术基础实验课件之三
▪ 用开关或按键进行定时设置 ▪ 倒计时计数状态用数码管显示 ▪ 计时结束时用彩灯或声响作为提示
实验内容
❖参见《数字电子技术实践教程》第163页 10. ❖5. 用硬件描述语言设计时序逻辑电路
▪ 从教程中所列的9个设计选题中选择一个,用VHDL 或Verilog HDL完成选题的逻辑设计
▪ 完成对逻辑设计的波形仿真 ▪ 将设计下载到实验箱并进行硬件功能测试 ▪ 难度等级与所选题目一致
功能测试
❖要求
▪ 计数状态用四位发光二极管显示 ▪ 计数器频率为1Hz
实验内容
❖参见《数字电子技术实践教程》第162页 8.
❖4. 定时器(难度等级1)
▪ 用适当的中小规模集成电路设计一个定时器 ▪ 实现60s以内的定时功能,可以设置60s以内任何时
间作为倒计时的起点 ▪ 将设计下载到实验箱并进行硬件功能测试
黄信湘息松与通信潘工大程鹏
结束语
谢谢大家聆听!!!
14
实验说明
❖ 以下给出若干参考设计选题,题目的详细要 求参见《数字电子技术实践教程》
❖ 难度分3个等级,加权系数分别为1,0.9和 0.8
❖ 采用Quartus II 7.1以上版本和“数字电路教 学实验箱ZXS-1”实现电路设计
❖ 从以下选题中任选2个完成,或自拟难度不 低于以上选题的题目完成
实验内容
❖参见《数字电子技术实践教程》第161页 1.
❖1. 循环码计数器(难度等级0.8)
▪ 用D触发器或JK触发器和适当的门电路设计一个三位 循环码计数器
▪ 完成对逻辑设计的波形仿真 ▪ 将设计下载到实验箱并进行硬件功能测试
❖要求
▪ 用1Hz连续脉冲作为计数器的时钟输入 ▪ 计数状态用一位数码管显示 ▪ 用数码管上的小数点显示进位输出
哈工大数电自主实验-数字流水灯
Harbin Institute of Technology数字电路自主设计实验院系:航天学院班级:姓名:学号:指导教师:哈尔滨工业大学一、实验目的1.进一步掌握数字电路课程所学的理论知识。
2.熟悉几种常用集成数字芯片的功能和应用,并掌握其工作原理,进一步学会使用其进行电路设计。
3.了解数字系统设计的基本思想和方法,学会科学分析和解决问题。
4.培养认真严谨的工作作风和实事求是的工作态度。
5.数电课程实验为我们提供了动手实践的机会,增强动手实践的能力。
二、实验要求设计流水灯,即一排灯按一定的顺序逐次点亮,且可调频、暂停、步进。
三、实验步骤1.设计电路实现题目要求,电路在功能相当的情况下设计越简单越好;2. 画出电路原理图(或仿真电路图);3.元器件及参数选择;4.电路仿真与调试;5.到实验时进行电路的连接与功能验证,注意布线,要直角连接,选最短路径,不要相互交叉,注意用电安全,所加电压不能太高,以免烧坏芯片;6.找指导教师进行实验的检查与验收;7.编写设计报告:写出设计与制作的全过程,附上有关资料和图纸,心得体会。
四、实验原理设计流水灯的方法有很多种,我的设计思路是:利用555定时器产生秒脉冲信号,74LS161组成8进制计数器,74LS138进行译码,点亮电平指示灯。
并通过调节555的电阻,实现频率可调。
通过两与非门,实现暂停、步进功能。
1.秒信号发生器(1)555定时器结构(2)555定时器引脚图(3)555定时器功能表(4)555定时器仿真图2. 74LS161实现8进制加计数74LS161是常用的四位二进制可预置的同步加法计数器,它可以灵活地运用在各种数字电路,以及单片机系统中实现分频器等很多重要的功能。
(1)74LS161同步加法器引脚图管脚图介绍:始终CP和四个数据输入端P0-P3清零CLR使能EP,ET置数PE数据输出端Q0-Q3进位输出TC(2)74LS161功能表(5)74LS161仿真图对74LS161进行八进制计数改组,需要一个与非门,即芯片74LS00,也就是将74LS161的输出端通过与非门,当输出为8时将输出为高电平的端口与非后接到74LS161的清零段。
哈工大电大数字电子技术基础大作业
哈工大电大数字电子技术基础大作业
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.内部电路组成(简化)。
哈工大_数电自主设计_交通信号灯控制电路的设计
Harbin Institute of Technology自主设计实验报告课程名称:数字电子技术基础设计题目:交通信号灯控制电路的设计院系:航天学院控制科学与工程系班级:设计者:学号:设计时间:哈尔滨工业大学姓名班级学号实验日期节次教师签字成绩实验名称交通信号灯控制电路的设计(一)实验目的1.掌握74LS161的逻辑功能和使用方法。
2.掌握利用555定时器搭建多谐振荡器的方法,并复习多谐振荡器参数的计算。
3.复习74LS00、74LS08、74LS32的逻辑功能和使用方法。
4.掌握逻辑电路设计的方法和步骤,并进一步熟悉逻辑函数的化简方法。
5.学习使用Multisim7和Multisim10软件进行数字电路的仿真。
(二)总体设计方案1.预想设计方案设计一个在由一条主干道和一条支干道汇合成十字路口上可以使用的交通信号灯控制电路,设计要求如下:交通信号灯控制器能有效操纵十字路口两组红、黄、绿等,使两条交叉通道的车辆交替通行。
主干道通行时,主干道绿灯亮,支干道红灯亮,放行25秒。
支干道通行时,主干道红灯亮,支干道绿灯亮,放行15秒。
每次绿灯变为红灯前,要求黄灯先亮5秒,而另一个路口的红灯不变。
为了减少实验中的等待时间,所有的亮灯的时间均缩小5倍,即555定时器的振荡周期为1秒。
2.设计过程1)自激多谐振荡器的设计调试555定时器组成的自激多谐振荡器,如图所示。
根据振荡周期T=0.7(R1+2R2)C,调节电位器,使振荡周期为1秒。
555的脚通过0.01uF电容接地,以防止外界干扰对阀值电压的影响,并进行仿真分析。
2)十进制计数器的设计使用74LS161组成十进制计数器,如图所示。
3)红绿黄灯译码控制电路的设计使用74LS00、74LS08、74LS32等元件组成控制电路。
(三)实验电路图(四)仪器设备名称、型号数字电子技术试验箱、直流稳压电源、双踪示波器、74LS161、74LS00、74LS08、74LS32、555定时器、电阻电容若干、电位器一个、导线若干。
哈工大数电上机实验报告
数字逻辑电路与系统上机实验报告哈尔滨工业大学组合逻辑电路的设计与仿真2.1 实验要求本实验练习在Maxplus II环境下组合逻辑电路的设计与仿真。
2.2三人表决电路实验2.2.1 实验目的1. 熟悉MAXPLUS II原理图设计、波形仿真流程2. 练习用门电路实现给定的组合逻辑函数2.2.2 实验预习要求1. 预习教材《第四章组合逻辑电路》2. 了解本次实验的目的、电路设计要求2.2.3 实验原理设计三人表决电路,其原理为:三个人对某个提案进行表决,当多数人同意时,则提案通过,否则提案不通过。
输入:A、B、C,为’1’时表示同意,为’0’时表示不同意;输出:F,为’0’时表示提案通过,为’1’时表示提案不通过;波形仿真。
2.2.4 实验步骤1. 打开MAXPLUS II, 新建一个原理图文件,命名为EXP2_2.gdf。
三人表决电路原理图制输入信号A、B、C的波形(真值表中的每种输入情况均需出现)。
4. 运行仿真器得到输出信号F的波形,将完整的仿真波形图(包括全部输入输三人表决电路仿真波形图2.3 译码器实验2.3.1实验目的熟悉用译码器设计组合逻辑电路,并练习将多个低位数译码器扩展为一个高位数译码器。
2.3.2实验预习要求1. 预习教材《4-2-2 译码器》一节2. 了解本次实验的目的、电路设计要求2.3.3实验原理译码器是数字电路中的一种多输入多输出的组合逻辑电路,负责将二进制码或BCD码变换成按十进制数排序的输出信息,以驱动对应装置产生合理的逻辑动作。
商品的译码器品种较多,有2-4线、3-8线、4-10线及4-16线等。
本实验练习对双2-4线译码器74LS139的扩展,并用其实现特定的组合逻辑。
74LS139包含两个2-4线译码器,其输入输出如下:74LS139中译码器1真值表如下:74LS139要求使用两片74LS139实现逻辑函数(,,,)(2,7,13,15)F A B C D m =∑,在MAXPLUS II 环境下完成电路的设计与波形仿真。
哈工大数电自主设计实验_进制可选计数器设计
1
1
1
7
8
1
0
0
0
8
9
1
0
0
1
9
10
1
0
1
0
10
11
0
0
0
0
0
12
0
0
0
1
1
表5 进制可选计数器数据记录(S2S1S0=100)
CP
Q3
Q2
Q1
Q0
LED显示(对应的十进制数)
0
0
0
0
0
0
1
0
0
0
1
1
2
0
0
1
0
2
3
0
0
1
1
3
4
0
1
0
0
4
5
0
1
0
1
5
6
0
1
1
0
6
7
0
1
1
1
7
8
1
0
0
0
8
9
1
0
0
1
9
10
数电自主设计实验
进制可选计数器设计
2012年12月
进制可选计数器设计
一、实验目的
1、利用实验室现有芯片设计一进制可选的加法计数器;
2、 根据该电路设计思想和实验结果提出实现任意进制计数器的一种方案。
二、实验原理
1、计数器是最常见的时序逻辑电路,广泛应用于计数、定时、分频等场合。每个计数循环中所含不同状态的个数称为计数器的进制数。常见的计数器有以下几种:
直流稳压电源
哈工大数字电子技术FPGA自主设计实验
乐曲演奏程序1.设计目标该程序设计了一种乐曲演奏程序,利用外接蜂鸣器可实现乐曲演奏。
2.程序设计原理乐谱左上角的数字表示,以四分音符为一拍,每小节四拍。
下面的数字表示每分钟该乐曲的拍数,由于该参数不影响输出乐曲的辨识,只是使得乐曲演奏速度发生快慢,我们将该值都设定为120。
因此可以得出每拍占时间为0.5s。
乐曲中最小拍数为0.25拍,因此,我们得到最小演奏时间为0.125s,对应的频率为8Hz。
音乐简谱谱的识别方法如下:(1)每个数字代表一个音符,未加任何标注的音符,演奏时间为1拍(2)数字上方或者下方的点表示音高,上方对应高音,下方对应低音。
(3)数字右下角的点表示延时半拍。
(4)数字后方的横线表示延时1拍。
(5)数字下方的横线表示该音符时间变为原来的一半3.设计思想不同的音符对应不同的振荡频率,因此我们可以控制某个输出脚按照乐谱在特定时长内输出特定频率,以达到乐曲演奏的目的。
整体系统框图如下:查找资料,不同音调对应频率关系如下:本设计采用如下程序设计由预置数决定的分频器:always@(posedge clk_6mhz)beginif(divider==A)begincarry<=1;divider<=B;endelsebegindivider<=divider+1;carry<=0;endend所得到的分频数为N=A+B-1。
为了便于计数,选择A=2^14-1=16383,考虑到二分频方波整形电路,因此4.设计内容与具体方案(1)歌谱如下(2)源程序module song(clk50m,speaker,high_7s,med_7s,low_7s);input clk50m;output reg speaker;output[6:0] high_7s;output[6:0] med_7s;output[6:0] low_7s;reg clk6mhz;reg clk_8hz;reg[13:0] divider,origin;reg carry;reg[7:0] counter;reg[3:0] high,med,low;reg[2:0] count8;reg[19:0] count20;always@(posedge clk50m)beginif(count8==7)begincount8<=0;clk_6mhz<=1;endelsebegincount8<=count8+1;clk_6mhz<=0;endendalways@(posedge clk_6mhz)beginif(count20==390625)//781250beginclk_8hz=~clk_8hz;count20<=0;endelsecount20<=count20+1;endalways@(posedge clk_6mhz)beginif(divider=16383)begincarry<=1;divider<=origin;endelsebegindivider<=divider+1;carry<=0;endendalways@(posedge carry)beginspeaker=~speaker;endalways@(posedge clk_8hz) begincase({high,med,low})'h001:origin<=4915;'h002:origin<=6168;'h003:origin<=7281;'h004:origin<=7792;'h005:origin<=8703;'h006:origin<=9565;'h007:origin<=10310;'h010:origin<=10647;'h020:origin<=11272;'h030:origin<=11831;'h040:origin<=12094;'h050:origin<=12556;'h060:origin<=12974;'h070:origin<=13346;'h100:origin<=13516;'h200:origin<=13829;'h300:origin<=14109;'h400:origin<=14235;'h500:origin<=14470;'h600:origin<=14678;'h700:origin<=14864;'h000:origin<=16383;endcaseendalways@(posedge clk_8hz) beginif(counter==127)counter<=0;elsecounter<=counter+1;case(counter)0:{high,med,low}<='h010; 1:{high,med,low}<='h010; 2:{high,med,low}<='h010; 3:{high,med,low}<='h010; 4:{high,med,low}<='h020; 5:{high,med,low}<='h020; 6:{high,med,low}<='h020; 7:{high,med,low}<='h020;8:{high,med,low}<='h030; 9:{high,med,low}<='h030; 10:{high,med,low}<='h030; 11:{high,med,low}<='h030;12:{high,med,low}<='h010; 13:{high,med,low}<='h010; 14:{high,med,low}<='h010; 15:{high,med,low}<='h010; //16:{high,med,low}<='h010; 17:{high,med,low}<='h010; 18:{high,med,low}<='h010; 19:{high,med,low}<='h010;20:{high,med,low}<='h020; 21:{high,med,low}<='h020; 22:{high,med,low}<='h020; 23:{high,med,low}<='h020;24:{high,med,low}<='h030; 25:{high,med,low}<='h030; 26:{high,med,low}<='h030; 27:{high,med,low}<='h030; 28:{high,med,low}<='h010; 29:{high,med,low}<='h010; 30:{high,med,low}<='h010; 31:{high,med,low}<='h010; //32:{high,med,low}<='h030; 33:{high,med,low}<='h030; 34:{high,med,low}<='h030; 35:{high,med,low}<='h030; 36:{high,med,low}<='h040; 37:{high,med,low}<='h040; 38:{high,med,low}<='h040; 39:{high,med,low}<='h040;40:{high,med,low}<='h050; 41:{high,med,low}<='h050; 42:{high,med,low}<='h050; 43:{high,med,low}<='h050;44:{high,med,low}<='h050; 45:{high,med,low}<='h050; 46:{high,med,low}<='h050; 47:{high,med,low}<='h050; //48:{high,med,low}<='h030; 49:{high,med,low}<='h030; 50:{high,med,low}<='h030; 51:{high,med,low}<='h030;52:{high,med,low}<='h040; 53:{high,med,low}<='h040; 54:{high,med,low}<='h040; 55:{high,med,low}<='h040;56:{high,med,low}<='h050; 57:{high,med,low}<='h050; 58:{high,med,low}<='h050; 59:{high,med,low}<='h050; 60:{high,med,low}<='h050; 61:{high,med,low}<='h050; 62:{high,med,low}<='h050; 63:{high,med,low}<='h050; //64:{high,med,low}<='h050; 65:{high,med,low}<='h050; 66:{high,med,low}<='h050; 67:{high,med,low}<='h060; 68:{high,med,low}<='h050; 69:{high,med,low}<='h050; 70:{high,med,low}<='h050; 71:{high,med,low}<='h040;72:{high,med,low}<='h030; 73:{high,med,low}<='h030; 74:{high,med,low}<='h030; 75:{high,med,low}<='h030; 76:{high,med,low}<='h010; 77:{high,med,low}<='h010; 78:{high,med,low}<='h010;//80:{high,med,low}<='h050; 81:{high,med,low}<='h050; 82:{high,med,low}<='h050; 83:{high,med,low}<='h060;84:{high,med,low}<='h050; 85:{high,med,low}<='h050; 86:{high,med,low}<='h050; 87:{high,med,low}<='h040;88:{high,med,low}<='h030; 89:{high,med,low}<='h030; 90:{high,med,low}<='h030; 91:{high,med,low}<='h030; 92:{high,med,low}<='h010; 93:{high,med,low}<='h010; 94:{high,med,low}<='h010; 95:{high,med,low}<='h010; //96:{high,med,low}<='h010; 97:{high,med,low}<='h010; 98:{high,med,low}<='h010; 99:{high,med,low}<='h010; 100:{high,med,low}<='h050; 101:{high,med,low}<='h050; 102:{high,med,low}<='h050; 103:{high,med,low}<='h050;104:{high,med,low}<='h010; 105:{high,med,low}<='h010; 106:{high,med,low}<='h010; 107:{high,med,low}<='h010; 108:{high,med,low}<='h010; 109:{high,med,low}<='h010; 110:{high,med,low}<='h010; 111:{high,med,low}<='h010; //112:{high,med,low}<='h010; 113:{high,med,low}<='h010;115:{high,med,low}<='h010;116:{high,med,low}<='h050; 117:{high,med,low}<='h050; 118:{high,med,low}<='h050; 119:{high,med,low}<='h050;120:{high,med,low}<='h010; 121:{high,med,low}<='h010; 122:{high,med,low}<='h010; 123:{high,med,low}<='h010; 124:{high,med,low}<='h010; 125:{high,med,low}<='h010; 126:{high,med,low}<='h010; 127:{high,med,low}<='h010;default:{high,med,low}<='h000; endcaseendled7s u1(high,high_7s);led7s u2(med,med_7s);led7s u3(low,low_7s); endmodule(3)引脚锁定(4)实验结果编译得到RTL图如下:。
哈工大电路实验1实验报告
竭诚为您提供优质文档/双击可除哈工大电路实验1实验报告篇一:哈工大数字电路实验报告实验二数字逻辑电路与系统上机实验讲义实验二时序逻辑电路的设计与仿真课程名称:院系:班级:姓名:学号:教师:哈尔滨工业大学20XX年12月实验二时序逻辑电路的设计与仿真3.1实验要求本实验练习在maxplusII环境下时序逻辑电路的设计与仿真,共包括6个子实验,要求如下:3.2同步计数器实验3.2.1实验目的1.练习使用计数器设计简单的时序电路2.熟悉用mAxpLusII仿真时序电路的方法3.2.2实验预习要求1.预习教材《6-3计数器》2.了解本次实验的目的、电路设计要求3.2.3实验原理计数器是最基本、最常用的时序逻辑电路之一,有很多品种。
按计数后的输出数码来分,有二进制及bcD码等区别;按计数操作是否有公共外时钟控制来分,可分为异步及同步两类;此外,还有计数器的初始状态可否预置,计数长度(模)可否改变,以及可否双向等区别。
本实验用集成同步4位二进制加法计数器74Ls161设计n分频电路,使输出信号cpo的频率为输入时钟信号cp频率的1/n,其中n=(学号后两位mod3.2.4实验步骤1.打开mAxpLusII,新建一个原理图文件,命名为exp3_2.gdf。
2.按照实验要求设计电路,将电路原理图填入下表。
3.新建一个波形仿真文件,命名为exp3_2.scf,加入时钟输入信号cp及输出信号cpo,并点击mAxpLusII左侧工具条上的时钟按钮,将cp的波形设置为周期性方波。
4.运行仿真器得到输出信号cpo的波形,将完整的仿真波形图(包括全部输入输出信号)附于下表。
3.3时序电路分析实验3.3.1实验目的练习用mAxpLusII进行时序逻辑电路的分析。
3.3.2实验预习要求1.预习教材《6-3-1异步二进制计数器》2.了解本次实验的目的、电路分析要求3.3.3实验原理分析如下时序电路的功能,并判断给出的波形图是否正确。
哈尔滨工业大学数电实验箱---组合逻辑电路设计
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)掌握74LS151的逻辑功能和使用方法 2)掌握74LS00的逻辑功能和使用方法 3)掌握74LS253的逻辑功能和使用方法4)通过实验,进一步熟悉组合逻辑电路的分析和设计方法二、实验元件管脚图74LS00管脚图 74LS151管脚图 74LS253三、实验内容1)人的血型有A 、B 、AB 、O 四种。
输血时输血者的血型与受血者血型必须符合图1中用箭头指示的授受关系。
判断输血者与受血者的血型是否符合上述规定,要求用八选一数据选择器(74LS151)及与非门(74LS00)实现。
(提示:用两个逻辑变量的4种取值表示输血者的血型,例如00代表A 、01代表B 、10代表AB 、11代表O 。
)图1设计过程:(1)设变量AB 表示输血者的血型,CD 表示受血者的血型,均00代表A 、01代表B 、10代表AB 、11代表O 。
输出变量为P ,1代表符合授受关系,0代表不符合。
(2)列写真值表(3)74LS151功能表(5)根据真值表列写表达式:D ABC D C AB D C AB D C B A D C B A D BC A D C B A D C B A P +++++++=ABCD +=+++++D C B A D C B A D BC A D C B A D C B A ABC C AB + ()7625310m m D m m m m m ++++++=(6)画出电路图“1”D_(7)用Multisim 仿真电路图如下图所示:经仿真得出的结果与理论分析结果一致,电路设计正确.(8)实际电路如下:经过调试与仿真结果和理论分析结果相符。
(9)波形图:由于仿真结果与理论结果和真实结果相一致,故可用仿真软件得到电路波形图。
哈工大 数电自主设计实验 数字时钟
实验报告课程名称:数字电子技术基础实验题目:设计性实验----数字时钟院系:航天学院专业:班级:姓名:学号:哈尔滨工业大学摘要数字时钟最主要的功能是计时,显示具体的时间,即显示当前的时和分,它还包含一些附加的功能,时间不准时的较正、复位数字时钟等功能。
数字时钟主要是时、分的显示,众所周知,一天有二十四小时,一小时有六十分钟,一分钟有六十秒,因此数字时钟的核心部件就是计数器,主要的是二十四进制和六十进制的计数器。
计数器有很多种类,74LS192是一种同步十进制可逆计数器,它具有双时钟输入,并且具有清零和置数等功能,通过它可以设计出不同进制的计时器,可以用来像数字时钟一样显示时、分,通过引脚的不同的功能,可以设计出不同的附加功能,时钟校对、复位以及一些更加复杂的功能。
在实验中,用555芯片连接输出为60秒的多谐振荡器用于时钟的分脉冲,用74LS192(十进制计数器)、74LS00(与非门芯片)连接成60和24进制的计数器,再通过数码管显示出来,从而构成了数字时钟。
关键字:数字时钟,数码管,计数,74LS192,555目录一.实验目的 (3)二.总体设计方案或技术路线 (3)三.实验电路图 (6)四. 仪器设备名称、型号 (6)五.理论分析或仿真分析结果 (8)六.详细实验步骤及实验结果数据记录 (9)七.实验结论 (9)八.实验中出现的问题及解决对策 (9)九.本次实验的收获和体会、对电路实验室的意见或建议 (9)十.参考文献 (10)数字时钟一.实验目的1、掌握不同进制计数器的设计方法,学会运用集成芯片来达到不同进制计数器的设计;2、通过附加功能的设置来掌握计数器处于非计时状态的工作情况。
二.总体设计方案或技术路线1、时钟信号的来源:为了使时钟显示的时间与生活中的时间周期频率一致,利用了555芯片组成了一个多谐振荡器,可以产生一个周期为60秒的脉冲信号输入给分的个位192芯片的时钟端子。
用555定时器构成的多谐振荡器如下图所示。
数电实验自主设计
数电实验自主设计—哈工大Harbin Institute of Technology数字电子技术实验自主设计实验报告姓名班级1404105 学号台号实验日期节次教师签字成绩实验名称:基于BASYS2 FPGA板的开发应用1.实验目的(1) 熟悉Verilog语言的使用(2) 能通过ISE软件进行FPGA简单的开放应用(3) 结合实际应用掌握课上所学关于组合电路和时序电路的理论知识(4) 掌握根据实际需求设计相应较为优化的电路的能力2. 实验环境ISE14.7BASYS2开发板3.实验内容总共设计3个实际应用电路,分别为两个较为简单的组合逻辑电路和一个较为复杂的时序逻辑电路。
下面分别介绍各个设计:(1)实验一:判断是否可以输血设计要求:已知人的血型由A、B、AB、O四种。
输血时,输血者的血型与受血者血型必须符合图中用箭头指示的授受关系。
要求该电路能够判断输血者与受血者的血型是否符合上述规定。
具体要求如图1所示。
图 1输血要求(2)实验二:显示译码电路设计要求:根据不同输入取值,依次显示“HIT+学号后5位(即HIT05108)”,共8个字型。
(3)实验三:数字钟设计要求:在数码管上显示分钟和秒的计时功能。
最左边两个显示分钟,最右边两个显示秒钟。
4.各实验源代码及仿真结果(1)实验一:判断是否可以输血Verilog程序:module shuxue(input a,input b,input ab,input o,input sa,input sb,input sab,input so,output reg w,output reg p); //a,b,ab,o分别代表输血者的四种血型sa,sb,sab,so分别代表受血者的四种血型;w代表W灯;p代表P灯reg w1,w2;always@(*)begincase({a,b,ab,o}) //判断输血者的输入是否符合要求4'b0001:w1=0;4'b0010:w1=0;4'b0100:w1=0;4'b1000:w1=0;default:w1=1; //若符合要求w1=0;否则w1=1endcasecase({sa,sb,sab,so}) //判断受血者的输入是否符合要求4'b0001:w2=0;4'b0010:w2=0;4'b0100:w2=0;4'b1000:w2=0;default:w2=1; //若符合要求w2=0;否则w2=1endcasew=w1||w2; //若输血者和受血者都符合要求w=0;否则w=1if(w==1)p = 0;else if(sa==1) //若受血者是A型血beginif(a==1||ab==1||o==1) //输血者是A,AB,O型血,p=1p=1;elsep=0;endelse if(sb==1) //若受血者是B型血beginif(b==1||ab==1||o==1) //输血者是B,AB,O型血,p=1p=1;elsep=0;endelse if(sab==1) //若受血者是AB型血beginif(b==1||a==1||o==1||ab==1) //输血者是A,B,AB,O型血,p=1p=1;elsep=0;endelse //若受血者是O型血beginif(o==1) //输血者是O型血,p=1p=1;elsep=0;endendendmodule引脚约束文件:NET "a" LOC=P11; NET "b" LOC=L3; NET "ab" LOC=K3; NET "o" LOC=b4; NET "sa" LOC=g3; NET "sb" LOC=f3; NET "sab" LOC=e2; NET "so" LOC=n3; NET "w" LOC=m11; NET "p" LOC=m5;仿真结果:数字电子技术基础设计作业10图 2实验一仿真波形图(2)实验二:显示译码电路(HIT05108) Verilog 程序:module da2( input [2:0] s, output reg[7:0] dl ); //s 表示8种输入;dl 控制8段数码管always@(s) begin case(s)3'b000:dl=8'b10010001; //s 输入为0,数码管显示H 3'b001:dl=8'b11110111; //s 输入为1,数码管显示I 3'b010:dl=8'b11100001; //s 输入为2,数码管显示T 3'b011:dl=8'b10011111; //s 输入为3,数码管显示1 3'b100:dl=8'b00000011; //s 输入为4,数码管显示0 3'b101:dl=8'b01001001; //s 输入为5,数码管显示5 3'b110:dl=8'b00000011; //s 输入为6,数码管显示03'b111:dl=8'b00000001;//s 输入为7,数码管显示8endcaseendendmodule管脚约束文件:NET "dl[7]" LOC = L14;NET "dl[6]" LOC = H12;NET "dl[5]" LOC = N14;NET "dl[4]" LOC = N11;NET "dl[3]" LOC = P12;NET "dl[2]" LOC = L13;NET "dl[1]" LOC = M12;NET "dl[0]" LOC = N13;NET "S[2]" LOC = K3;NET "S[1]" LOC = L3;NET "S[0]" LOC = P11; 仿真波形:图 3实验二仿真波形图(3)实验三:数字钟Verilog程序://顶层模块module clock_top(clk,duan,wei);input clk;output[7:0] duan;output[3:0] wei;wire clk_1Hz,clk_190Hz;wire[15:0] disp;clock_divf U1(.clk_50MHz(clk),.clk_1Hz(clk_1Hz),.clk_190Hz(clk_190Hz));clock_time U2(.clk_1Hz(clk_1Hz),.time_MS(disp));IP_smg_dsp U3(.clk_190Hz(clk_190Hz),.dat(disp),.duan(duan),.wei(wei)); endmodule//分频模块,得到1Hz,用于秒计数;得到190Hz,用于控制数码管显示//190Hz:这是4个数码管可以同时稳定显示的最低2n分频频率module clock_divf(clk_50MHz,clk_1Hz,clk_190Hz); input clk_50MHz;output clk_190Hz;output reg clk_1Hz;reg[25:0] cnt;assign clk_190Hz=cnt[17];always@(posedge clk_50MHz)if(cnt==25000000) //实际项目用,1s变化1次// if(cnt==250000) //测试用,加快100倍分钟/秒的变化begincnt=0;clk_1Hz=~clk_1Hz;endelse cnt=cnt+1;endmodule//计时模块,得到分和秒module clock_time(clk_1Hz,time_MS);input clk_1Hz;output[15:0] time_MS;reg[3:0] M_H,M_L,S_H,S_L;reg clk_SH,clk_ML,clk_MH;assign time_MS={M_H,M_L,S_H,S_L}; //时间:分、秒always@(posedge clk_1Hz)begin //秒:个位if(S_L==9)beginS_L=0;clk_SH=1;endelse beginS_L=S_L+1;clk_SH=0;endendalways@(posedge clk_SH)begin //秒:十位if(S_H==5)beginS_H=0;clk_ML=1;endelse beginS_H=S_H+1;clk_ML=0;endendalways@(posedge clk_ML)begin //分钟:个位if(M_L==9)beginM_L=0;clk_MH=1;endelse beginM_L=M_L+1;clk_MH=0;endendalways@(posedge clk_MH)begin //分钟:十位if(M_H==5)M_H=0;else M_H=M_H+1;endendmodule//4个数字扫描显示模块module IP_smg_dsp(clk_190Hz,dat,duan,wei); input clk_190Hz;input[15:0]dat;output reg[7:0]duan;output reg[3:0]wei;reg[3:0]disp;reg[1:0]smg_ctl;always@(posedge clk_190Hz)beginsmg_ctl=smg_ctl+1;case(smg_ctl)2'b00:beginwei=4'b1110;disp=dat[3:0];end2'b01:beginwei=4'b1101;disp=dat[7:4];end2'b10:beginwei=4'b1011;disp=dat[11:8];end2'b11:beginwei=4'b0111;disp=dat[15:12];endendcaseendalways@(disp)case(disp)0:duan=8'b11000000;1:duan=8'b11111001;2:duan=8'b10100100;3:duan=8'b10110000;4:duan=8'b10011001;5:duan=8'b10010010;6:duan=8'b10000010;7:duan=8'b11111000;8:duan=8'b10000000;9:duan=8'b10010000;10:duan=8'b10001000;11:duan=8'b10000011;12:duan=8'b11000110;13:duan=8'b10100001;14:duan=8'b10000110;15:duan=8'b10001110;default:duan=8'b11000000;//,默认为0 endcaseendmodule管脚约束文件:NET "wei[0]" LOC = F12; NET "wei[1]" LOC = J12; NET "wei[2]" LOC = M13; NET "wei[3]" LOC = K14; NET "duan[0]" LOC = L14; NET "duan[1]" LOC = H12; NET "duan[2]" LOC = N14; NET "duan[3]" LOC = N11; NET "duan[4]" LOC = P12; NET "duan[5]" LOC = L13; NET "duan[6]" LOC = M12; NET "duan[7]" LOC = N13;NET "clk" LOC=B8;仿真波形:图 4实验三仿真波形图5.实验结论(1)基于Verilog语言对FPGA开发板进行开发,可实现各种丰富的功能(2)进行模块化的编程可提高编写代码的效率,也易于debug6.实验中出现的问题及解决对策(1)问题:map和place&route环节需要过长时间解决:程序模块化,易于综合和布线(2)问题:bit文件导入FPGA可以正常实现功能,但仿真时一直出现z和x状态解决:应该给中间变量附上初值(3)问题:综合、转化为电路、生成bit等过程中会出现warning的情况解决:尽量消除warning,但是有warning并不会影响最终结果7.参考文献[1] 杨春玲. 数字电子技术基础. 北京 : 高等教育出版社, 2011 :409-411.[2] 贺敬凯. Xilinx FPGA应用开发. 北京: 清华大学出版社,2015.[3] 沈涛. Xilinx FPGA/CPLD设计初级教程. 西安: 西安电子科技大学出版社,2009.。
哈工大数电实验报告
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数字逻辑电路与系统课程名称:数字逻辑电路与系统院系:电子与信息工程学院班级:哈尔滨工业大学2014年11月实验二时序逻辑电路的设计与仿真3.1 实验要求本实验练习在Maxplus II 环境下时序逻辑电路的设计与仿真,共包括6 个子实验,要求如下:3.2同步计数器实验3.2.1 实验目的1. 练习使用计数器设计简单的时序电路2. 熟悉用MAXPLUS II 仿真时序电路的方法3.2.2 实验预习要求1. 预习教材《6-3 计数器》2. 了解本次实验的目的、电路设计要求3.2.3 实验原理计数器是最基本、最常用的时序逻辑电路之一,有很多品种。
按计数后的输出数码来分,有二进制及BCD 码等区别;按计数操作是否有公共外时钟控制来分,可分为异步及同步两类;此外,还有计数器的初始状态可否预置,计数长度(模)可否改变,以及可否双向等区别。
本实验用集成同步4 位二进制加法计数器74LS161 设计N 分频电路,使输出信号CPO 的频率为输入时钟信号CP 频率的1/N,其中N=(01mod+8=9。
9分频电路。
下表为74LS161 的功能表。
3.2.4 实验步骤1. 打开MAXPLUS II, 新建一个原理图文件,命名为EXP3_2.gdf。
2. 按照实验要求设计电路,将电路原理图填入下表。
9分频电路。
3. 新建一个波形仿真文件,命名为EXP3_2.scf,加入时钟输入信号CP 及输出信号CPO,并点击MAXPLUS II 左侧工具条上的时钟按钮,将CP 的波形设置为周期性方波。
4. 运行仿真器得到输出信号CPO 的波形,将完整的仿真波形图(包括全部输入输出信号)附于下表。
3.3 时序电路分析实验3.3.1 实验目的练习用MAXPLUS II 进行时序逻辑电路的分析。
3.3.2 实验预习要求1. 预习教材《6-3-1 异步二进制计数器》2. 了解本次实验的目的、电路分析要求3.3.3 实验原理分析如下时序电路的功能,并判断给出的波形图是否正确。
哈工大电路实验报告
哈工大电路实验报告哈工大电路实验报告引言电路实验是电子工程专业学生必修的一门实践课程,通过实际操作和测量,加深对电路原理的理解和应用能力的培养。
本篇报告将详细介绍哈工大电路实验的内容和实验结果。
实验一:直流电路的基本特性直流电路是电子工程中最基础的电路之一,通过该实验,我们可以了解电流、电压和电阻之间的关系。
首先,我们使用万用表测量了不同电阻下的电流和电压,并绘制了电流-电压曲线。
实验结果显示,电流和电压成正比,符合欧姆定律。
此外,我们还观察到不同电阻值对电路的影响,当电阻值增大时,电流减小,电压上升。
实验二:交流电路的特性交流电路是电子工程中另一个重要的电路类型,通过该实验,我们可以了解交流电路中的电压、电流和频率之间的关系。
我们使用示波器测量了不同频率下的电压和相位差,并绘制了频率-电压曲线。
实验结果显示,电压和频率成正比,而相位差则随频率的变化而变化。
此外,我们还观察到了交流电路中的谐振现象,当频率等于谐振频率时,电压达到最大值。
实验三:二极管的特性二极管是一种常见的电子元件,通过该实验,我们可以了解二极管的整流特性和稳压特性。
我们使用示波器测量了不同电压下的二极管电流,并绘制了电流-电压曲线。
实验结果显示,当电压小于二极管的正向压降时,电流非常小,呈现断开状态;当电压大于正向压降时,电流迅速上升,呈现导通状态。
此外,我们还观察到了二极管的稳压特性,即当电压超过一定值时,电流基本保持不变。
实验四:放大电路的特性放大电路是电子工程中常用的电路类型,通过该实验,我们可以了解放大电路的放大倍数和频率响应。
我们使用示波器测量了不同频率下的输入电压和输出电压,并绘制了频率-电压曲线。
实验结果显示,放大电路在特定频率范围内具有较高的放大倍数,而在超过该范围后,放大倍数会迅速下降。
此外,我们还观察到了放大电路的失真现象,即输入信号的形状在放大后发生畸变。
实验五:滤波电路的特性滤波电路是电子工程中常用的电路类型,通过该实验,我们可以了解滤波电路对不同频率信号的处理能力。
哈工大数字电路大作业2
哈工大数字电路大作业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一样。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
姓名班级学号
实验日期节次教师签字成绩
可调频双花型彩灯控制器
1.实验目的
在许多场合可以看到LED彩灯。
LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用。
为了将数字电路的知识灵活的运用到实际应用中,现设计一个能够控制闪烁频率并且能变换花型的LED彩灯的控制电路。
2.总体设计方案或技术路线
由该控制电路的功能可知,该控制器的电路由三部分构成,第一部分是时钟脉冲发生电路,第二部分是花型选择电路,第三部分是花型产生电路。
首先,要做变频,可以通过给定不同频率的时钟脉冲来控制,而555定时器构成的多谐振荡电路恰好有输出不同频率波形的功能,通过改变外接电阻阻值即可轻松改变输出波形的频率,所以这一部分用555定时器来产生不同频率的脉冲,再用2/8分频器分频;受到实验室的实验箱的限制,本次实验仅产生两种花型做演示,选择电路由74LS138译码器完成;花型彩灯的花型需要序列脉冲发生器产生,移位寄存器74LS194组成的脉冲发生器可以实现此功能。
3.实验电路图
4.仪器设备名称、型号和技术指标
实验箱、555定时器*1、74LS138*1、74LS93*1、74LS194*2、74LS20*1、74LS32、5kΩ电阻*1、10kΩ滑动变阻器*1、1μF电容*2
5.理论分析或仿真分析结果
电路接通后,555定时器输出端开始产生脉冲信号,由于此时频率较高,不便于观察,所以需降频,经过2/8分频器之后,频率有明显下降,将此信号接到译码器的G1端,译码器B、C端接低电平,A端手动控制,Y0、Y1端分别接到两个74LS194芯片的CP端,当A接低电平时,Y0有效,此时第一个194芯片被选中,A接高电平,第二个194芯片被选中。
下表为要实现的花型,按此表画卡诺图并化简,得到花型1的
D SR=~(Q A Q B Q C Q D),花型1的D SR=~Q D,并由此连接电路。
两片194芯片的输出通过或门
9 10000001
6.详细实验步骤及实验测量数据记录
(1)选择好芯片,电阻电容等原件,并测试导线的通断。
(2)按照电路图在实验箱上连接电路图。
(3)打开电源进行实验,观察彩灯花形变化。
(4)调整R B观察彩灯变化频率是否改变
(5)改变74LS138芯片的A端电平,观察花型变化
7.实验结论
8.实验中出现的问题及解决对策
9.本次实验的收获和体会、对电路实验室的意见或建议
10.参考文献
【1】王淑娟主编.数字电路技术基础.高等教育出版社,2011.6.
【2】廉玉欣主编.电子技术基础实验教程.机械工业出版社,2010.2.。