数字逻辑电路实验报告_数据逻辑电路实验报告
数字逻辑电路实验报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“数据逻辑电路实验报告”。
数字逻辑电路设计
--多功能数字钟
学院:计算机科学与通信工程 专业: 姓名: 学号:
指导老师:
江苏大学计算机10 数字逻辑电路设计报告
多功能数字钟
一、设计任务及要求
(1)拥有正常的时、分、秒计时功能。
(2)能利用实验板上的按键实现校时、校分及清零功能。(3)能利用实验板上的扬声器做整点报时。(4)闹钟功能
(5)在MAXPLUS II 中采用层次化设计方法进行设计。
(6)在完成全部电路设计后在实验板上下载,验证设计课题的正确性。
二、多功能数字钟的总体设计和顶层原理图
作为根据总体设计框图,可以将整个系统分为六个模块来实现,分别是计时模块、校时模块、整点报时模块、分频模块、动态显示模块及闹钟模块。
江苏大学计算机10 数字逻辑电路设计报告
(1)计时模块
该模块使用74LS160构成的一个二十四进制和两个六十进制计数器级联,构成数字钟的基本框架。二十四进制计数器用于计时,六十进制计数器用于计分和秒。只要给秒计数器一个1HZ的时钟脉冲,则可以进行正常计时。分计数器以秒计数器的进位作为计数脉冲。
用两个74160连成24进制的计数器,原图及生成的器件如下:
江苏大学计算机10 数字逻辑电路设计报告
(2)校时模块
校时模块设计要求实现校时,校分以及清零功能。
*按下校时键,小时计数器迅速递增以调至所需要的小时位。*按下校分键,分计数器迅速递增以调至所需要的分位。*按下清零键,将秒计数器清零。
注意事项:① 在校分时,分计数器的计数不应对小时位产生影响,因而需要屏蔽此时分计数器的进位信号以防止小时计数器计数。
② 利用D触发器进行按键抖动的消除,因为D触发器是边沿触发,在除去时钟边沿到来前一瞬间之外的绝大部分时间都不接受输入,可以消除抖动。
③ 计时采用1HZ的脉冲驱动计数器计数,而校时则需要较高频率的信号驱动以达到快速校时的目的。因此这两种脉冲信号就需要两路选择器进行选择,条件即为是否按键。
注:D触发器用于按键的消抖,接更高的频率用于校时和校分,二路选择器用于区分是正常计时还是校时。
江苏大学计算机10 数字逻辑电路设计报告
数字,6次一个循环,形成一个扫描序列。利用人眼的视觉暂留则可以同步显示6个数字。
注:
CLK为时钟信号,S为计数器的小时,F为分,M为秒,SELOUT为六路选择器,选择哪个数码管工作,SEGOUT为七段译码器,使数码管显示数字。
器件(6)闹钟模块
注意事项:① 设定的闹钟的时间应使用新的计数器进行存储,与正常的计时互不干扰。
② 与正常计时状态的显示切换。可以设定一个按键,用于选择是将计时时间还是将闹钟时间送至动态显示模块。
③ 应实现一个比较模块,当计时到与闹钟时间相等时,则驱动扬声器鸣叫。
④ 闹钟响声应限定在一定时间内,且在这段时间内应随时可以通过按键取消闹时状态。
闹钟调时和分以及正常计时与闹钟定时之间的选择原图及生成的器件如下:
江苏大学计算机10 数字逻辑电路设计报告
注:
输入端CLK为时钟信号,SD清零,NAOZHONG是使计数器正常计时和闹钟定时界面的切换,SE调闹钟的小时,SD调闹钟的分,输出端即为闹钟的小时和分。
闹钟界面和正常计时界面的转换器件如下:
注:
S表示计时器的时,F表示计时器的分,M表示计数器的秒;
SS表示闹钟的时,FF表示闹钟的分;Q为计时和闹钟两个界面的切换开关,ABC为输出的时间。
正常计时时间和设定闹钟时间的比较器件如下:
注:
江苏大学计算机10 数字逻辑电路设计报告
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt60_06 is port(clk:in std_logic;
clear:in std_logic;
c:out std_logic;
k1,k0:out std_logic_vector(3 downto 0));
end cnt60_06;architecture cnt of cnt60_06 is signal q1,q0:std_logic_vector(3 downto 0);begin
proce(clk,clear)
begin
if(clear='1')then
q1
else
if(clk'event and clk='1')then
if(q1=“0101” and q0=“1001”)then-----到59
q1
elsif(q1
q0
elsif(q0
q0
end if;
end if;
end if;
k1
k0
end proce;end cnt;
用VHDL语言写的报时器源代码如下:
library ieee;use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;entity alert_06 is port(f1,f0,m1,m0:in std_logic_vector(3 downto 0);
siga,sigb:out std_logic);
end alert_06;
architecture a of alert_06 is begin siga
0
江苏大学计算机10 数字逻辑电路设计报告
port(clk:in std_logic;
s :in std_logic_vector(7 downto 0);
f :in std_logic_vector(7 downto 0);
m :in std_logic_vector(7 downto 0);
selout:out std_logic_vector(5 downto 0);
segout:out std_logic_vector(6 downto 0));end display_06;
architecture a of display_06 is signal number:std_logic_vector(3 downto 0);signal sel
:std_logic_vector(5 downto 0);signal seg
:std_logic_vector(6 downto 0);signal q
:std_logic_vector(2 downto 0);begin a:proce(clk)begin if(clk'event and clk='1')then q
when“000”=>selselsel
when“011”=>selselselsel
proce begin if sel =“000001”then
number
number
number
number
江苏大学计算机10 数字逻辑电路设计报告
end switch_06;
architecture a of switch_06 is begin proce(Q,s,f,ff,m)Begin
if(Q='1')then
A
else
A
end if;
end proce;
end a;正常计时时间和设定的闹钟时间之间的比较的源代码如下:
library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity comp_06 is port(s,f,ff:in std_logic_vector(7 downto 0);d:out std_logic;Q:in std_logic);end comp_06;architecture behavior of comp_06 is
begin proce(Q,s,f,ff)begin if(rising_edge(Q))then if(s= and f=ff)then d
else d
《数字逻辑电路》实验报告第次实验:姓名:学号:级系班邮箱:时间:正文(由下面八项内容评定每次实验报告成绩)一、实验目的本次实验预期要学习到的知识、方法等二、实验原理(背景知识)本......
《数字逻辑电路》课程教学大纲第一章 数制与编码在数字电路和计算机中,只用0和1两种符号来表示欣喜,参与运算的数也是由0和1构成的,即二进制数。考虑到人类计数习惯,在计算机操......
数字逻辑论文摘要:随着数字逻辑技术的发展,数字逻辑电路也逐步应用于我们生活的方方面面。在数字机顶盒,数字电冰箱,数字洗衣机等领域均有所体现。本文将大体介绍数字逻辑电路的......
2014-2015第一学期数字逻辑电路期末总结:1、数字逻辑电路的基本概念、基本和复合逻辑运算、基本逻辑分析方法(含化简和变换的方法);2、基本硬件单元(如OD门、TSL门、传输门的等的......
本科实验报告 学号: 指导教师:2016年7月19日课程名称:姓名: 院系: 专业:电子电路安装与调试 陈肖苇、李晓杰、张晨靖 信息与电子工程学院 电子科学与技术 3140104544 王子立实验报......
