北京邮电大学数字电路实验报告
北邮数字电路综合实验报告
数字电路综合实验报告简易智能密码锁一、实验课题及任务要求设计并实现一个数字密码锁,密码锁有四位数字密码和一个确认开锁按键,密码输入正确,密码锁打开,密码输入错误进行警示。
基本要求:1、密码设置:通过键盘进行4 位数字密码设定输入,在数码管上显示所输入数字。
通过密码设置确定键(BTN 键)进行锁定。
2、开锁:在闭锁状态下,可以输入密码开锁,且每输入一位密码,在数码管上显示“-”,提示已输入密码的位数。
输入四位核对密码后,按“开锁”键,若密码正确则系统开锁,若密码错误系统仍然处于闭锁状态,并用蜂鸣器或led 闪烁报警。
3、在开锁状态下,可以通过密码复位键(BTN 键)来清除密码,恢复初始密码“0000”。
闭锁状态下不能清除密码。
4、用点阵显示开锁和闭锁状态。
提高要求:1、输入密码数字由右向左依次显示,即:每输入一数字显示在最右边的数码管上,同时将先前输入的所有数字向左移动一位。
2、密码锁的密码位数(4~6 位)可调。
3、自拟其它功能。
二、系统设计2.1系统总体框图2.2逻辑流程图2.3MDS图2.4分块说明程序主要分为6个模块:键盘模块,数码管模块,点阵模块,报警模块,防抖模块,控制模块。
以下进行详细介绍。
1.键盘模块本模块主要完成是4×4键盘扫描,然后获取其键值,并对其进行编码,从而进行按键的识别,并将相应的按键值进行显示。
键盘扫描的实现过程如下:对于4×4键盘,通常连接为4行、4列,因此要识别按键,只需要知道是哪一行和哪一列即可,为了完成这一识别过程,我们的思想是,首先固定输出高电平,在读入输出的行值时,通常高电平会被低电平拉低,当当前位置为高电平“1”时,没有按键按下,否则,如果读入的4行有一位为低电平,那么对应的该行肯定有一个按键按下,这样便可以获取到按键的行值。
同理,获取列值也是如此,先输出4列为高电平,然后在输出4行为低电平,再读入列值,如果其中有哪一位为低电平,那么肯定对应的那一列有按键按下。
北邮数字电路与逻辑设计实验-实验报告(下)
北京邮电大学电路实验中心<数字电路与逻辑设计实验(下)>实验报告班级: xxx 学院: xxx实验室: xxx 审阅教师:姓名(班内序号): xxx 学号: xxx实验时间: xxx评定成绩:目录一、任务要求 (2)1.基本要求 (2)2.提高要求 (2)二、系统设计 (2)1.设计思路 (2)2.总体框图 (4)3.分块设计 (5)(1)分频器模块 (5)(2)4×4键盘输入模块 (5)(3)数码管显示模块 (6)(4)8×8 LED点阵显示模块 (6)(5)LCD液晶屏显示模块 (6)(6)中心模块 (6)三、仿真波形及波形分析 (6)1.分频器模块 (6)2.4×4键盘输入模块 (7)3.数码管显示模块 (7)4.8×8 LED点阵显示模块 (8)5.LCD液晶屏显示模块 (8)6.中心模块 (8)四、源程序 (9)1.分频器模块 (9)2.4×4键盘输入模块 (9)3.数码管显示模块 (11)4.8×8 LED点阵显示模块 (12)5.LCD液晶屏显示模块 (19)6.中心模块 (23)五、功能说明及资源利用情况 (26)六、故障及问题分析 (27)七、总结和结论 (27)一、任务要求本电路可供甲乙二人进行猜拳游戏。
通过不同的按键控制,选择多种出拳方式,显示猜拳的结果,实现猜拳游戏,防止了作弊的可能。
1.基本要求1、甲乙双方各用4×4 键盘中的三个按键模拟“石头”、“剪刀”、“布”,一个按键为“确认”。
4×4 键盘第一行为甲,第二行为乙;2、裁判用4×4 键盘第三行的一个按键模拟“开”,一个按键为“准备”,一个按键为“复位”;3、裁判宣布“准备”后,甲乙双方分别选择出拳方式并确认;4、裁判“开”以后,用点阵的左右三列同时显示甲乙双方的猜拳选择(如下图所示),并用两个数码管显示甲乙的猜拳比分;图1甲“布”,乙“剪刀”;甲“剪刀”,乙“石头”5、猜拳游戏为五局三胜制。
北邮数字电路与逻辑设计实验报告
北京邮电大学数字电路与逻辑设计实验报告学院:班级:姓名:学号:实验一 Quartus II原理图输入法设计与实现一、实验目的:(1)熟悉Quartus II原理图输入法进行电路设计和仿真;(2)掌握Quartus II 图形模块单元的生成与调用;(3)熟悉实验板的使用;二、实验所用器材:(1)计算机;(2)直流稳压电源;(3)数字系统与逻辑设计实验开发板。
三、实验任务要求(1)用逻辑门设计实现一个半加器,仿真验证其功能,并生成新的半加器图形模块单元。
(2)用(1)中生成的半加器模块和逻辑门设计实现一个全加器,仿真验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显示输出信号。
(3)用3线-8线译码器(74LS138)和逻辑门设计实现函数 ,仿真验证其功能,并下载到实验板测试。
要求用拨码开关设定输入信号,发光二极管显示输出信号。
四、实验原理图及仿真波形图(1)半加器半加器原理图仿真波形仿真波形图分析:根据仿真波形对比半加器真值表,可以确定电路实现了半加器的功能。
但我们也可以发现输出SO出现了静态功能冒险,要消除该冒险可以加入相应的选通脉冲。
(2)全加器全加器原理图仿真波形仿真波形图分析:根据仿真波形对比半加器真值表,可以确定电路实现了全加器的功能(2) 74138 3线-8线译码器原理图仿真波形图仿真波形图分析 ;当且仅当ABC输入为000、010、100、111时,F=1,可知电路实现了函数。
实验二用VHDL设计与实现组合逻辑电路一、实验目的:(1)熟悉用VHDL语言设计时序逻辑电路的方法;(2)熟悉用Quartus II文本输入法进行电路设计;(3)熟悉不同的编码及其之间的转换。
二、实验所用器材:(1)计算机;(2)直流稳压电源;(3)数字系统与逻辑设计实验开发板。
三、实验任务要求(1)用 VHDL语言设计实现一个共阴极7段数码管译码器;(2)用VHDL语言设计一个8421码转余三码的代码转换器;(3)用VHDL语言设计设计一个四位2进制奇校验器。
北京邮电大学数电实验报告
北京邮电大学数字电路与逻辑设计实验发光二极管走马灯的电路设计与实现实验报告学院:信息与通信工程学院班级:27姓名:付莹学号:班内序号:23【实验目的】(1)进一步了解时序电路描述方法;(2)熟悉状态机的设计方法。
【实验所用仪器及元器件】(1)计算机;(2)直流稳压电源;(3)数字系统与逻辑设计实验开发板。
【实验任务要求】设计并实现一个控制8个发光二极管亮灭的电路,仿真验证其功能,并下载到实验板测试。
(1)单点移动模式:一个点在8个发光二极管上来回的亮(2)幕布式:从中间两个点,同时向两边依次点亮直到全亮,然后再向中间点灭,依次往复。
【实验设计思路及过程】(1)设计思路实验要求有两个,一个是单点移动模式,一个是幕布式。
通过CASE-WHEN 语句实现走马灯的变化。
分别定义一个8个变量的数据类型和一个13变量的数据类型,表示一个周期内的灯的变化,并设计一个变量在两种状态间进行切换。
此时,需要把所有状态罗列到case-when中去。
(2)VHDL代码LIBRARY IEEE;USE ABC ISPORT(A,CLK,RESET:IN STD_LOGIC;DENG:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END ABC;ARCHITECTURE A OF ABC ISTYPE STATE_TEMP is(s0,s1,s2,s3,s4,s5,s6,s7);TYPE STATE_TEMP1 is(s0,s1,s2,s3,s4,s5,s6,s7,s00,s01,s02,s03,s04,s05);signal STATE:STATE_TEMP;signal STATE1:STATE_TEMP1;BEGINPROCESS(CLK,RESET)BEGINIF RESET='1' THENDENG<="00000000";ELSIF(CLK'EVENT AND CLK='0')THENIF A='0'THEN --KAIMUSHICASE STATE1 ISWHEN s0 => STATE1<=s1;DENG<="";WHEN s1 => STATE1<=s2;DENG<="01000000";WHEN s2 => STATE1<=s3;DENG<="00100000";WHEN s3 => STATE1<=s4;DENG<="00010000";WHEN s4 => STATE1<=s5;DENG<="00001000";WHEN s5 => STATE1<=s6;DENG<="00000100";WHEN s6 => STATE1<=s7;DENG<="00000010";WHEN s7 =>STATE1<=s00;DENG<="00000001";WHEN s00=>STATE1<=s01;DENG<="00000010";WHEN s01=>STATE1<=s02;DENG<="00000100";WHEN s02=>STATE1<=s03;DENG<="00001000";WHEN s03=>STATE1<=s04;DENG<="00010000";WHEN s04=>STATE1<=s05;DENG<="00100000";WHEN s05=>STATE1<=s0;DENG <="01000000";END CASE;ELSECASE STATE ISWHEN s0 => STATE<=s1;DENG<="00011000";WHEN s1 => STATE<=s2;DENG<="00111100";WHEN s2 => STATE<=s3;DENG<="01111110";WHEN s3 => STATE<=s4;DENG<="";WHEN s4 => STATE<=s5;DENG<="01111110";WHEN s5 => STATE<=s6;DENG<="00111100";WHEN s6 => STATE<=s7;DENG<="00011000";WHEN s7 => STATE<=s0;DENG<="00000000";END CASE;END IF;END IF;END PROCESS;END A;【仿真波形及分析】1.仿真波形(1)单点移动式(2)幕布式(3)复位信号2.波形分析(1)单点移动式由图可以看出,当A为0时程序实现单点移动功能,如图所示DENG[7]开始亮,之后依次为DENG[6], DENG[5], DENG[4], DENG[3], DENG[2],DENG[1], DENG[0],然后DENG[1]也开始亮,依此类推,实现了功能要求(2)幕布式由图可以看出,当A为1时,如图所示,先是中间的两个灯DENG[4], DENG[5]亮,然后扩展到四个灯亮DENG[3]至DENG[6]亮,接下来是DENG[2]~DENG[7]亮,最后全亮,接着DENG[2]~DENG[7]亮,继而循环下去。
北京邮电大学 数字电路综合实验报告 洗衣机控制器
数字电路综合实验预习报告洗衣机控制器信息与通信工程学院xxxxx班xx号xxx洗衣机控制器一、实验目的1. 熟练掌握VHDL 语言和QuartusII 软件的使用;2. 理解状态机的工作原理和设计方法;3. 掌握利用EDA 工具进行自顶向下的电子系统设计方法;二、设计任务要求:制作一个简易全自动洗衣机控制器::1. 洗衣机的工作步骤为洗衣、漂洗和脱水三个过程,工作时间分别为:洗衣20 秒,漂洗25 秒,脱水15 秒;2. 用一个按键实现洗衣程序的手动选择:A、单洗涤;B、单漂洗;C、单脱水;D、漂洗和脱水;E、洗涤、漂洗和脱水全过程;3. 用显示器件显示洗衣机的工作状态(洗衣、漂洗和脱水),并倒计时显示每个状态的工作时间,全部过程结束后,应提示使用者;4. 用一个按键实现暂停洗衣和继续洗衣的控制,暂停后继续洗衣应回到暂停之前保留三、设计思路1)总体思路:洗衣机分为主要分为四个部分,预置部分,输入部分,控制部分,输出部分。
输入部分:负责输入洗衣机的模式选择信号,开始信号,暂停信号,时钟信号。
预置部分:通过一个按键的改变来控制洗衣模式的选择,在开始信号为一的上升沿,读取预置的模式,并初始化总时间,以及控制部分需要用到的信号,并把初始状态送输出部分显示。
输出部分:负责输出洗衣机的当前洗衣模式,剩余时间,以及洗衣结束时的报警信号。
控制部分:根据预置部分的状态开始工作,对输入部分的控制信号进行相应,控制洗衣机的运行中模式的转变,并将改变的输出信号传递给输出部分显示。
方框图状态转移图:洗衣过程中的状态转移,转移的时候改变temp 的值,作为下次转移的标志时间: State=111时temp=40; State=110时temp=25; State=100时temp=0; State=010时temp=0;State=001时temp=0;流程图四、电路设计1、分频模块:PROCESS(CLOCK) --由输入时钟进行100分频产生洗衣时钟BEGINIF (CLOCK'EVENT AND CLOCK='1') THENCOUNT<=COUNT + 1;IF (COUNT=499999) THENCOUNT<=0;CLK<= NOT CLK;END IF;END IF;END PROCESS;功能说明:由于数电实验开发板上的系统时钟为1MHz,想要的到频率为1hz的倒计时时钟,就要对输入时钟clock进行分频,产生计时时钟clk,分频模块中每个clock做count加一,加到499999时count归零,同时clk翻转就可以得到1Hz的时钟。
北邮数电综合实验报告
北京邮电大学数字电路与逻辑设计实验学院:信息与通信工程学院班级: 2013211127 作者:薄士宁学号: 2013212543 ____一.实验名称和任务要求LED 点阵风扇的设计与实现基本要求:1、用8×8 点阵模拟风扇转动,并采用双色点阵显示。
2、风扇转动方式如图1 所示,包括四个点阵显示状态并按顺序循环显示。
风扇转动速度根据环境温度分为4 档,其中1 档的四个显示状态之间的切换时间为2 秒,2 档为1 秒,3 档为0.5 秒,4 档为静止不动。
图1 点阵模拟风扇转动示意图3、环境温度通过2 个BTN 按键设置,一个用来增加,一个用来减少,温度可设置范围为10℃~40℃,温度精度为1℃,并用两个数码管进行温度显示。
风扇根据不同的温度自动采用不同的转动速度,其中20℃~24℃对应1档,25℃~29℃对应2 档,30℃~40℃对应3 档,10℃~19℃对应4 档,用一个数码管显示档位。
4、定时模式:在风扇不同转动速度下,可以通过按键切换进入定时模式。
定时时间可设置范围为20~59 秒,采用两个数码管进行倒计时显示,当倒计时结束后,风扇状态保持静止不动。
5、设置开关键。
风扇开机初始状态为20℃、1 档,并有不小于5 秒的开机音乐。
关机状态为点阵全灭。
提高要求:1、设计LED 风扇的其他工作模式。
2、利用实验板上的温度传感器代替按键直接获取温度数据,实现对LED 风扇四档转速的自动控制。
3、用数码管实时显示温度传感器的温度数据,精度为0.1℃。
4、自拟其他功能。
二.基本思路根据实验要求,画出总的原理图。
实验的基本要求,即8×8双色点阵模拟风扇转动、风扇转动分四个档位(每个档位对应“四种”状态)、通过环境温度控制档位的自动选择、设计定时模式、开关机状态。
为了实现这些既定要求,设计出了温度控制模块、倒计时控制模块、音乐控制模块、点阵风扇模块、数码管显示模块等,通过对时钟的分频、加减法计数器、数据选择器等的运用,来实现上述功能。
北邮数电实验报告
北邮数电实验报告北邮数电实验报告一、引言数电实验是电子信息类专业学生必修的一门实验课程,通过实践操作,帮助学生巩固理论知识,培养实际动手能力。
本次实验旨在通过设计和搭建一个简单的数字电路,来理解数字电路的基本原理和工作方式。
二、实验目的本次实验的目的是设计一个4位二进制加法器,实现两个4位二进制数的相加运算。
通过实验,我们可以加深对于数字电路的理解,掌握数字电路的设计和搭建方法。
三、实验原理1. 二进制加法器二进制加法器是一种用于计算二进制数相加的数字电路。
它由若干个逻辑门和触发器组成,可以实现二进制数的加法运算。
在本次实验中,我们将设计一个4位二进制加法器,即可以计算两个4位二进制数的相加结果。
2. 逻辑门逻辑门是数字电路中常用的基本元件,用于实现逻辑运算。
常见的逻辑门有与门、或门、非门、异或门等。
在本次实验中,我们将使用与门和异或门来构建4位二进制加法器。
四、实验步骤1. 设计4位二进制加法器的电路图根据实验要求,我们需要设计一个能够计算两个4位二进制数相加的电路。
首先,我们可以将两个4位二进制数分别用D0~D3和E0~E3表示,其中D0和E0分别为最低位。
然后,我们需要使用与门和异或门来实现加法器的功能。
通过逻辑运算,我们可以得到每一位的和以及进位。
最后,将每一位的和连接起来,即可得到最终的结果。
2. 搭建电路根据电路图,我们可以开始搭建实验电路。
首先,将所需的逻辑门和触发器连接起来,形成一个完整的电路。
然后,将所需的输入信号和电源连接到电路上。
最后,使用示波器等工具检查电路的工作状态,确保电路正常运行。
3. 进行实验测试在搭建好电路后,我们可以进行实验测试。
首先,将两个4位二进制数的输入信号连接到电路上。
然后,通过观察输出信号,判断电路是否正确计算了两个二进制数的相加结果。
如果输出信号与预期结果一致,说明电路设计和搭建成功。
五、实验结果与分析在进行实验测试后,我们可以得到实验结果。
通过观察输出信号,我们可以判断电路是否正确计算了两个二进制数的相加结果。
北邮-数电实验报告
北邮-数电实验报告数字电路实验报告学院:信息与通信工程专业:信息工程班级:2013211125学号:2013210681姓名:袁普实验一:QuartusⅡ原理图输入法设计与实现一:实验要求①:用逻辑门设计实现一个半加器,仿真验证其功能,并生成新的半加器图形模块单元。
②:用实验一生成的半加器模块和逻辑门设计实现一个全加器,仿真验证其功能,并下载到实验板测试,要求用拨码开关设定输入信号,发光二极管显示输出信号。
③:用3线—8线译码器和逻辑门设计实现函数F,仿真验证其功能,下载到实验板测试。
要求用拨码开关设定输入信号,发光二极管显示输出信号。
二:报告内容①:实验一(2)的原理图用两个已经生成的半加器图形模块单元和一个双输入或门即可实现全加器②:仿真波形图以及分析波形图:波形分析:通过分析ab ci三个输入在8中不同组合下的输出,发现与全加器的真值表吻合,说明实现了全加器的逻辑功能。
同时看见波形中出现了毛刺(冒险),这也与事实一致。
③:故障及问题分析第一次在做全加器的时候发现找不到已经生成的半加器模块,后来发现是因为在建立工程时这两个项目没有建在同一个文件夹里,在调用的时候就找不到。
后来我将全加器工程建在同一个文件夹里解决了此问题。
实验二:用VHDL设计和实现组合逻辑电路一:实验要求①:用VHDL设计一个8421码转换为格雷码的代码转换器,仿真验证其功能。
②:用VHDL设计一个4位二进制奇校验器,要求在为奇数个1时输出为1,偶数个1时输出为0,仿真验证其功能。
③:用VHDL设计一个数码管译码器,仿真验证其功能,下载到实验板测试,要求用拨码开关设定输入信号,数码管显示输出信号,并且只使一个数码管有显示,其余为熄灭状态。
二:故障及问题分析在刚开始实现让一个数码管显示的时候,我本来准备再设置6个输入和输出,通过实验板上的拨码来输入信息分别控制不同的数码管的的开闭状态,但是后来发现这样效率很低而且实验板上的拨码开关数量根本不够。
双色点阵显示控制器 北京邮电大学数字电路综合实验报告
数字电路综合实验报告班级:姓名:班内序号:学号:日期:一、实验摘要采用EDA技术的自顶向下的模块化设计方法,借助相关开发软件,例如QualtusⅡ软件,将硬件描述语言——VHDL程序固化于具有丰富I/O口、内部逻辑和连线资源的FPGA(现场可编程门阵列)中。
该技术具有系统设计效率高、集成度好、保密性强、易于修改、易于实现等优点,成为当今数字系统设计主流技术。
此方式所制作的LED点阵控制器,由于是纯硬件行为,具有速度快、可靠性高、抗干扰能力强、开发周期短等显著优点。
二、实验任务(1)任务要求双色点阵显示控制器设计实现一个8×8 双色点阵显示控制器。
基本要求:1、固定红色显示一个汉字或图形,显示亮度4 级可调,用一个btn 按钮实现亮度调节,亮度变化视觉效果要尽量明显。
2、用从红到绿8 级渐变色显示一个固定汉字或图形。
3、分别用单字循环显示、左右滚动显示、上下滚动显示三种显示方式单色显示四个汉字或图形,显示过程中,显示方式用一个btn 按键进行切换。
4、显示的图形或汉字要尽量饱满美观。
提高要求:1、滚动显示过程中实现四种显示颜色的自动变换,颜色变化视觉效果要尽量明显。
2、自拟其它功能。
(2)EDA点阵显示汉字原理以8×8的LED点阵为例,8×8的LED点阵是由64个发光二极管按矩阵形式排列而成,每一行上的发光管有一个公共的阳极(或阴极),每一列上的发光管有一个公共的阴极(或阳极),一般按动态扫描方式显示汉字或图形。
由于所用实验板上提供有1 kHz的时钟,本例设计中利用该时钟进行扫描,使每行扫描时间为1 ms,实验结果显示亮度合适。
现以行扫描为例简单说明动态扫描显示的原理。
工作时先将要扫描行的点阵字模从各列上输出,再让译码器选中(扫描)该行,使本行得以显示,接着再送下一行数据,再使下一行有效,直到8行全被扫描一遍。
至此,一幅完整的文字信息就显现出来,然后再反复扫描这8行直至显示新的信息。
北邮数电实验报告
北邮数电实验报告1. 实验目的本实验的目的是通过实际操作和实验验证,加深对数字电路的理解和掌握。
具体实验内容包括: 1. 实现各种基本逻辑电路(与门、或门、非门、异或门等)的电路设计。
2. 学习使用开关和LED灯进行数字信号输入和输出。
3. 掌握数字电路实验中常用的仪器设备的使用方法。
2. 实验器材和环境本实验所使用的器材和环境如下: - FPGA实验箱 - 数字逻辑集成电路(与门、或门、非门、异或门等) - 电源 - 接线板 - 数字电路实验仪器3. 实验步骤3.1 实验准备首先,我们需要将实验所需的器材连接好,包括将数字逻辑集成电路插入到FPGA实验箱上的插槽中,并将电源正确连接。
3.2 电路设计与布线根据实验要求,我们需要设计不同的基本逻辑电路。
比如,要设计一个与门电路,可以通过将两个输入端分别与两个开关连接,将输出端连接到一个LED灯上。
其他的逻辑电路同样可以设计类似的方式。
在设计和布线的过程中,需要注意保持电路的连通性,并避免出现短路等问题。
3.3 输入和输出信号设置根据实验要求,我们需要设置输入和输出信号。
可以通过控制开关的开合状态来设置输入信号,然后观察LED灯的亮灭情况来判断输出信号的状态是否符合预期。
3.4 实验数据记录和分析在实验过程中,我们需要记录每个逻辑电路的输入和输出信号状态,并进行分析。
可以通过绘制真值表或者逻辑门表来记录并分析数据。
4. 实验结果与分析根据实验步骤中记录的数据,我们可以得出实验结果,并进行进一步的分析。
比如,可以通过比对设计的逻辑电路输出和预期输出的差异,来判断实验是否成功完成。
5. 总结与反思通过本次实验,我深入了解和掌握了数字电路的基本原理和实验方法。
通过设计和实验验证,加深了对基本逻辑电路的理解,并熟悉了数字电路实验所使用的仪器设备。
在实验过程中,我遇到了一些问题,比如电路连接错误导致的信号不稳定等,但通过仔细调试和排查,最终解决了这些问题。
北邮数字电路实验报告——交通灯控制器(VHDL)(最全的)
课题三:交通灯控制器学院:信息与通信工程学院专业:通信工程姓名:***学号:********课题三:交通灯控制器一.设计课题的任务要求(一)、实验目的1. 熟练掌握 VHDL 语言和QuartusII 软件的使用;2. 理解状态机的工作原理和设计方法;3. 掌握利用 EDA 工具进行自顶向下的电子系统设计方法;(二)、相关知识本实验要利用 CPLD 设计实现一个十字路口的交通灯控制系统,与其他控制系统一样,本系统划分为控制器和受控电路两部分。
控制器使整个系统按设定的工作方式交替指挥车辆及行人的通行,并接收受控部分的反馈信号,决定其状态转换方向及输出信号,控制整个系统的工作过程。
路口交通灯控制系统的有东西路和南北路交通灯 R(红)、Y(黄)、G(绿)三色,所有灯均为高电平点亮。
设置20s 的通行时间和5s 转换时间的变模定时电路,用数码管显示剩余时间。
提供系统正常工作/复位和紧急情况两种工作模式。
(三)、实验任务1.基本任务:设计制作一个用于十字路口的交通灯控制器。
1). 南北和东西方向各有一组绿、黄、红灯用于指挥交通,绿灯、黄灯和红灯的持续时间分别为20 秒、5 秒和25 秒;2). 当有特殊情况(如消防车、救护车等)时,两个方向均为红灯亮,计时停止,当特殊情况结束后,控制器恢复原来状态,继续正常运行;3). 用两组数码管,以倒计时方式显示两个方向允许通行或禁止通行的时间;2.提高要求:1). 增加左、右转弯显示控制功能;2). 紧急状况时增加声光警告功能;3). 自拟其它功能。
二.系统设计(包括设计思路、总体框图、分块设计)(一)设计思路利用有限状态机描绘出交通灯的状态转移图,并设置记录东西和南北路口可通行时间的全局变量count,共设置四个正常状态,状态间的转移以count的值作为判断条件。
对于两种特殊情况:当复位信号reset为高电平时,则回到最初状态;当紧急输入信号emergency 为高电平时,则转移到一特殊状态。
数字电路实验报告_北邮
一、实验目的本次实验旨在通过实践操作,加深对数字电路基本原理和设计方法的理解,掌握数字电路实验的基本步骤和实验方法。
通过本次实验,培养学生的动手能力、实验技能和团队合作精神。
二、实验内容1. 实验一:TTL输入与非门74LS00逻辑功能分析(1)实验原理TTL输入与非门74LS00是一种常用的数字逻辑门,具有高抗干扰性和低功耗的特点。
本实验通过对74LS00的逻辑功能进行分析,了解其工作原理和性能指标。
(2)实验步骤① 使用实验箱和实验器材搭建74LS00与非门的实验电路。
② 通过实验箱提供的逻辑开关和指示灯,验证74LS00与非门的逻辑功能。
③ 分析实验结果,总结74LS00与非门的工作原理。
2. 实验二:数字钟设计(1)实验原理数字钟是一种典型的数字电路应用,由组合逻辑电路和时序电路组成。
本实验通过设计一个24小时数字钟,使学生掌握数字电路的基本设计方法。
(2)实验步骤① 分析数字钟的构成,包括分频器电路、时间计数器电路、振荡器电路和数字时钟的计数显示电路。
② 设计分频器电路,实现1Hz的输出信号。
③ 设计时间计数器电路,实现时、分、秒的计数。
④ 设计振荡器电路,产生稳定的时钟信号。
⑤ 设计数字时钟的计数显示电路,实现时、分、秒的显示。
⑥ 组装实验电路,测试数字钟的功能。
3. 实验三:全加器设计(1)实验原理全加器是一种数字电路,用于实现二进制数的加法运算。
本实验通过设计全加器,使学生掌握全加器的工作原理和设计方法。
(2)实验步骤① 分析全加器的逻辑功能,确定输入和输出关系。
② 使用实验箱和实验器材搭建全加器的实验电路。
③ 通过实验箱提供的逻辑开关和指示灯,验证全加器的逻辑功能。
④ 分析实验结果,总结全加器的工作原理。
三、实验结果与分析1. 实验一:TTL输入与非门74LS00逻辑功能分析实验结果表明,74LS00与非门的逻辑功能符合预期,具有良好的抗干扰性和低功耗特点。
2. 实验二:数字钟设计实验结果表明,设计的数字钟能够实现24小时计时,时、分、秒的显示准确,满足实验要求。
北邮 数电实验报告
北邮数电实验报告北邮数电实验报告数电实验是电子信息科学与技术专业的一门重要课程,通过实验可以帮助学生巩固理论知识,培养实践能力。
本次实验我们进行了基于数字逻辑电路的设计与实现,探索了数字电路的原理和应用。
以下是对本次实验的总结和分析。
1. 实验目的本次实验的主要目的是学习数字逻辑电路的设计与实现,了解数字电路的基本原理和应用。
通过实验,我们可以熟悉数字电路的搭建过程,掌握数字电路的设计方法和测试技巧。
2. 实验原理本次实验主要涉及到的数字逻辑电路有与门、或门、非门、异或门等。
这些逻辑门可以通过逻辑运算实现各种功能,如加法器、减法器、比较器等。
我们需要根据实验要求,设计并搭建相应的数字电路,然后通过示波器等仪器进行测试,验证电路的正确性。
3. 实验步骤首先,我们根据实验要求,设计了一个4位全加器电路。
通过逻辑门的组合,实现了4位二进制数的加法运算。
然后,我们搭建了一个4位比较器电路,用于比较两个4位二进制数的大小关系。
最后,我们设计了一个4位减法器电路,实现了4位二进制数的减法运算。
4. 实验结果通过实验,我们成功搭建了4位全加器、4位比较器和4位减法器电路,并进行了测试。
实验结果表明,我们设计的电路能够正确地完成加法、比较和减法运算,符合预期的逻辑规则。
5. 实验总结通过本次实验,我们深入了解了数字逻辑电路的设计与实现过程。
我们学会了使用逻辑门进行电路设计,并通过实验验证了电路的正确性。
实验过程中,我们也遇到了一些问题,如电路连接错误、示波器读数不准确等。
但通过仔细分析和调试,我们最终解决了这些问题,并取得了满意的实验结果。
6. 实验感想数电实验是一门非常重要的实践课程,通过实验我们不仅巩固了理论知识,还培养了实践能力和解决问题的能力。
在实验过程中,我们需要细心观察、仔细分析,并灵活运用所学的知识。
实验不仅考验了我们的动手能力,还锻炼了我们的思维能力和团队合作精神。
7. 实验的意义数电实验的意义在于将理论知识与实际应用相结合,帮助我们更好地理解和掌握数字电路的原理和应用。
北邮数电综合实验报告
北邮数电综合实验报告北邮数电综合实验报告一、实验目的与背景数电综合实验是北邮电子信息工程专业的重要实践环节,旨在通过实际操作,巩固和应用学生在数字电路、模拟电路、通信原理等相关课程中所学到的理论知识。
本实验报告将对数电综合实验的内容、过程和结果进行详细描述和分析。
二、实验内容本次数电综合实验的主要内容为设计一个数字电子钟。
该电子钟具备显示时间、日期、闹钟功能,并能实现闹钟的设置、开关控制等基本操作。
实验中,我们需要使用数字集成电路、显示模块、按键开关、时钟模块等元件进行电路设计和搭建。
三、实验过程1. 硬件设计与连接根据实验要求,我们首先进行电路设计。
根据数字电子钟的功能需求,我们需要选取适当的集成电路和模块。
通过分析电路原理图,我们将各个模块进行连接,保证信号的正确传递和控制。
2. 软件编程与调试在硬件连接完成后,我们需要进行软件编程。
通过使用C语言或者Verilog等编程语言,我们可以实现数字电子钟的各项功能。
在编程过程中,我们需要考虑到时钟频率、显示模块的控制、按键开关的响应等因素。
3. 实验调试与测试完成软件编程后,我们需要进行实验调试和测试。
通过连接电源,观察电子钟的各项功能是否正常工作。
如果发现问题,我们需要进行调试,找出问题所在,并进行修复。
四、实验结果与分析经过实验调试和测试,我们成功实现了数字电子钟的设计和搭建。
该电子钟能够准确显示时间和日期,并能根据用户的设置进行闹钟的开关和响铃。
通过实验过程,我们对数字电路的原理和应用有了更深入的理解。
五、实验心得与收获通过参与数电综合实验,我深刻体会到了理论与实践的结合的重要性。
在实验中,我们需要将课堂上所学的知识应用到实际中,通过实际操作来巩固和加深对知识的理解。
同时,实验中也锻炼了我们的动手能力和解决问题的能力。
在实验过程中,我们还学会了团队合作的重要性。
在设计和搭建电路的过程中,我们需要相互配合,互相帮助,共同解决问题。
通过与同学们的合作,我们不仅解决了实验中遇到的各种问题,还加深了与同学们的交流和友谊。
北邮数电综合实验报告
北邮数电综合实验报告1. 引言本报告旨在总结和分析北邮数电综合实验的结果和过程。
该实验旨在培养学生的综合能力,包括数字电路设计、程序编写和硬件调试。
本文将按照实验步骤的顺序,逐步介绍实验的内容和结果。
2. 实验准备在开始实验之前,我们需要准备以下材料和设备:•Altera Quartus II软件:用于数字电路设计和仿真。
•FPGA(现场可编程门阵列)开发板:用于实际测试和验证设计。
•USB数据线:用于将设计传输到FPGA开发板上。
•数字电路实验板:用于连接外部电路和FPGA开发板。
3. 实验步骤3.1 实验一:基本逻辑门电路设计在本实验中,我们首先设计了基本逻辑门电路,包括与门、或门和非门。
通过使用Quartus II软件,我们可以绘制原理图并进行逻辑仿真。
在验证正确性后,将设计下载到FPGA开发板上进行物理验证。
3.2 实验二:二进制加法器设计在第二个实验中,我们设计了一个4位二进制加法器。
通过使用逻辑门和触发器,我们可以将两个4位二进制数相加,并输出结果。
使用Quartus II软件进行综合、布线和仿真,然后将设计下载到FPGA开发板上进行物理验证。
3.3 实验三:7段数码管驱动器设计在本实验中,我们设计了一个7段数码管驱动器。
通过使用逻辑门和触发器,我们可以将4位二进制数转换为相应的7段显示。
使用Quartus II软件进行综合、布线和仿真,然后将设计下载到FPGA开发板上进行物理验证。
3.4 实验四:有限状态机设计在最后一个实验中,我们设计了一个简单的有限状态机。
该状态机可以通过输入信号的变化而改变其状态,并根据当前状态和输入信号来产生输出。
使用Quartus II软件进行综合、布线和仿真,然后将设计下载到FPGA开发板上进行物理验证。
4. 结果与讨论通过对实验的各个步骤进行详细的设计和验证,我们成功完成了北邮数电综合实验。
通过使用Quartus II软件进行仿真和物理验证,我们验证了设计的正确性和可行性。
北京邮电大学数电实验报告
北京邮电大学数字电路与逻辑设计实验发光二极管走马灯的电路设计与实现实验报告学院:信息与通信工程学院班级:2010211127姓名:付莹学号:10210759班内序号:23【实验目的】(1)进一步了解时序电路描述方法;(2)熟悉状态机的设计方法。
【实验所用仪器及元器件】(1)计算机;(2)直流稳压电源;(3)数字系统与逻辑设计实验开发板。
【实验任务要求】设计并实现一个控制8个发光二极管亮灭的电路,仿真验证其功能,并下载到实验板测试。
(1)单点移动模式:一个点在8个发光二极管上来回的亮(2)幕布式:从中间两个点,同时向两边依次点亮直到全亮,然后再向中间点灭,依次往复。
【实验设计思路及过程】(1)设计思路实验要求有两个,一个是单点移动模式,一个是幕布式。
通过CASE-WHEN 语句实现走马灯的变化。
分别定义一个8个变量的数据类型和一个13变量的数据类型,表示一个周期内的灯的变化,并设计一个变量在两种状态间进行切换。
此时,需要把所有状态罗列到case-when中去。
(2)VHDL代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY ABC ISPORT(A,CLK,RESET:IN STD_LOGIC;DENG:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END ABC;ARCHITECTURE A OF ABC ISTYPE STATE_TEMP is(s0,s1,s2,s3,s4,s5,s6,s7);TYPE STATE_TEMP1 is(s0,s1,s2,s3,s4,s5,s6,s7,s00,s01,s02,s03,s04,s05); signal STATE:STATE_TEMP;signal STATE1:STATE_TEMP1;BEGINPROCESS(CLK,RESET)BEGINIF RESET='1' THENDENG<="00000000";ELSIF(CLK'EVENT AND CLK='0')THENIF A='0'THEN --KAIMUSHICASE STATE1 ISWHEN s0 => STATE1<=s1;DENG<="10000000";WHEN s1 => STATE1<=s2;DENG<="01000000";WHEN s2 => STATE1<=s3;DENG<="00100000";WHEN s3 => STATE1<=s4;DENG<="00010000";WHEN s4 => STATE1<=s5;DENG<="00001000";WHEN s5 => STATE1<=s6;DENG<="00000100";WHEN s6 => STATE1<=s7;DENG<="00000010";WHEN s7 =>STATE1<=s00;DENG<="00000001";WHEN s00=>STATE1<=s01;DENG<="00000010";WHEN s01=>STATE1<=s02;DENG<="00000100";WHEN s02=>STATE1<=s03;DENG<="00001000";WHEN s03=>STATE1<=s04;DENG<="00010000";WHEN s04=>STATE1<=s05;DENG<="00100000";WHEN s05=>STATE1<=s0;DENG <="01000000";END CASE;ELSECASE STATE ISWHEN s0 => STATE<=s1;DENG<="00011000";WHEN s1 => STATE<=s2;DENG<="00111100";WHEN s2 => STATE<=s3;DENG<="01111110";WHEN s3 => STATE<=s4;DENG<="11111111";WHEN s4 => STATE<=s5;DENG<="01111110";WHEN s5 => STATE<=s6;DENG<="00111100";WHEN s6 => STATE<=s7;DENG<="00011000";WHEN s7 => STATE<=s0;DENG<="00000000";END CASE;END IF;END IF;END PROCESS;END A;【仿真波形及分析】1.仿真波形(1)单点移动式(2)幕布式(3)复位信号2.波形分析(1)单点移动式由图可以看出,当A为0时程序实现单点移动功能,如图所示DENG[7]开始亮,之后依次为DENG[6], DENG[5], DENG[4], DENG[3], DENG[2],DENG[1], DENG[0],然后DENG[1]也开始亮,依此类推,实现了功能要求(2)幕布式由图可以看出,当A为1时,如图所示,先是中间的两个灯DENG[4], DENG[5]亮,然后扩展到四个灯亮DENG[3]至DENG[6]亮,接下来是DENG[2]~DENG[7]亮,最后全亮,接着DENG[2]~DENG[7]亮,继而循环下去。
北邮电子-数电综合实验报告
数字电路综合实验设计简易出租车计价器的设计与实现学院:电子工程学院班级: 2011211203学号: 2011210876姓名:孙月鹏班内序号: 04摘要本文介绍了利用Quartus II综合性PLD/FPGA开发软件,在MAXII数字逻辑实验开发板上实现简易出租车计价器功能的设计与实现方法.本方案采用自上而下的设计理念,将整体电路按照功能划分为分频、计数、控制、数码管显示电路、点阵显示电路等若干模块,模块内用VHDL语言完成逻辑设计,模块间用原理图进行连接,使整体可实现计费、计时等功能。
关键字:可编程器件模块化设计出租车计价器VHDL语言一、设计任务要求➢设计一台出租车计价器,不同情况下具有不同的收费标准。
基本要求:1.行驶公里:用时钟2秒钟表示出租车匀速行驶1公里。
在行车5公里以内,按起步价13元收费,超过5公里部分,以每公里2元收费。
燃油附加费每运次1元。
2.途中等待:用按键控制中途等待,等待少于(包括)5秒不收费,超过5秒后没等待3秒钟加收1元。
3.用数码管分时显示计费金额、行驶里程和等候时间.字母A表示当前处于显示计费金额状态,字母B表示当前处于显示行驶里程状态,字母C表示当前处于显示等候时间状态。
4.用按键控制出租车空驶、载客状态。
提高要求:1.用点阵滚动显示收费单据.2.具有夜间模式,基本单价加收20%的费用.出租车收费以元为单位,元以下四舍五入。
3.出租车行驶速度可调可控.4.多人乘车,分段计价。
5.自拟其他功能。
二、设计思路与结构框图1。
设计思路图1 结构框图由结构框图可以分析得出,该系统的的主体是计数控制器。
该系统由外部控制载客控制信号和等待控制信号,以时钟信号的翻转为计数依据,完成对时间、里程和费用的计数,并将结果通过数码管译码电路显示出来。
该系统的控制信号可由拨码或按键输入,时钟由开发板内部时钟分频得出,输出有点阵输出和数码管输出.因此,可将系统分为分频器、计数控制器、数码管译码和显示以及点阵显示四部分。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北京邮电大学
数字电路与逻辑设计实验
实验报告
实验名称:QuartusII原理图输入
法设计与实现
学院:北京邮电大学
班级:
姓名:
学号:
一.实验名称和实验任务要求
实验名称:QuartusII原理图输入法设计与实现
实验目的:⑴熟悉用QuartusII原理图输入法进行电路设计和仿真。
⑵掌握QuartusII图形模块单元的生成与调用;
⑶熟悉实验板的使用。
实验任务要求:⑴掌握QuartusII的基础上,利用QuartusII用逻辑
门设计实现一个半加器,生成新的半加器图像模
块。
⑵用实验内容(1)中生成的半加器模块以及逻辑门
实现一个全加器,仿真验证其功能,并能下载到实
验板上进行测试,要求用拨码开关设定输入信号,
发光二级管显示输出信号。
⑶用3线—8线译码器(74L138)和逻辑门实现要求
的函数:CBA
F+
C
+
=,仿真验证其
+
B
C
B
A
A
A
B
C
功能,,并能下载到实验板上进行测试,要求用拨
码开关设定输入信号,发光二级管显示输出信号。
二.设计思路和过程
半加器的设计实现过程:⑴半加器的应有两个输入值,两个输出值。
a表示加数,b表示被加数,s表示半加和,
co表示向高位的进位。
⑵由数字电路与逻辑设计理论知识可知
b a s ⊕=;b a co ∙=
选择两个逻辑门:异或门和与门。
a,b 为异
或门和与门的输入,S 为异或门的输出,C
为与门的输出。
(3)利用QuartusII 仿真实现其逻辑功能,
并生成新的半加器图形模块单元。
(4)下载到电路板,并检验是否正确。
全加器的设计实现过程:⑴全加器可以由两个半加器和一个或门构
成。
全加器有三个输入值a,b,ci ,两个输
出值s,co :a 为被加数,b 为加数,ci 为低
位向高位的进位。
⑵全加器的逻辑表达式为:
c b a s ⊕⊕=
b a ci b a co ∙+∙⊕=)(
⑶利用全加器的逻辑表达式和半加器的逻 辑功能,实现全加器。
用3线—8线译码器(74L138)和逻辑门设计实现函数
CBA A B C A B C A B C F +++=
设计实现过程:⑴利用QuartusII 选择译码器(74L138)的图形模块
单元。
⑵函数CBA
C
B
+
=
A
+
F+
B
A
C
C
A
B
可以通过译码器(74L138)和一个与非门实现。
将译
码器输出端y0,y2,y4,y7作为输入端接到与非门即
可实现函数。
三.实验原理图
⑴半加器的原理图:
⑵全加器的原理图:
⑶用3线—8线译码器(74L138)和逻辑门设计实现函数:
四.仿真波形图
⑴半加器的仿真波形图:
⑵全加器的仿真波形图:
⑶3线—8线译码器(74L138)和逻辑门设计实现函数的仿真波形图:
五.仿真波形图分析
⑴半加器仿真波形图分析:
当半加器的2个输入端都输入0时,即a=b=0时,则有输出:半加和s=0,进位端co=0。
当半加器2个输入端有一个为1时,即a=1,b=0 或a=0,b=1时,则有输出:半加和s=1,进位端co=0。
当半加器2个输入端都为1时,即a=b=1时,则有输出半加和s=0,进位端进位co=1。
值得注意的是,半加器的仿真波形中出现了冒险。
⑵全加器仿真波形图的分析:
当全加器a,b 2个输入端都输入都为0,若低位进位ci为0,即输出为s=co=0。
若低位进位为1,则输出s=1,co=0。
当全加器2个输入端有一个输入为1,即a=1,b=0或即a=0,b=1若低位进位为0,即ci=0则输出s=0,co=1。
若低位进位为1,即ci=1则输出s=1,co=1。
当全加器2个输入端都输入都为1,若低位进位为0,即,,,
则输出,。
若低位进位为1,即,,,则输出,。
⑶3线—8线译码器(74L138)设计实现函数的仿真波形图分析:
当CBA=000、CBA=010、CBA=100或CBA=111时,由波形图分析可得F=1。
当CBA=001、CBA=011、CBA=101或CBA=110时,由波形图分析可得F=0。
综上可知:该设计方法的确实现了函数
六.故障及问题分析
实验过程还算顺利,下面来讨论实验中需要注意的地方。
仿真实验中需要注意的地方:
⑴开始仿真波形时,需注意设定END TIME,否则无法进行仿真。
⑵规定输入端波形的周期不合理,须按照倍数关系来设定,不能随意设定周期,输入变量周期按2的幂次方上升。
(3)保存文件时,命名的一致性,否则可能导致实验无法进行下去。
(4)将设计好的逻辑电路下载到实验板之前,应设定好引脚。
注意实验板上输入端和输出端对应的引脚号。
七.总结和结论
通过本次实验我慢慢掌握了QuartusII这一软件的一些基本功能。
实验学习中,我懂得了如何理解并将理论课上所学的知识运用在实验中并得到验证,对数字电路与逻辑设计的知识有了更加全面的认识。
同时,我也更加对数字电路产生了更加浓厚的兴趣!总的来说,这次实验课对我的帮助真的很大。