数字逻辑电路实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字逻辑电路设计
--多功能数字钟
学院:计算机科学与通信工程
专业:
姓名:
学号:
指导老师:
多功能数字钟
一、设计任务及要求
(1)拥有正常的时、分、秒计时功能。
(2)能利用实验板上的按键实现校时、校分及清零功能。
(3)能利用实验板上的扬声器做整点报时。
(4)闹钟功能
(5)在MAXPLUS II 中采用层次化设计方法进行设计。
(6)在完成全部电路设计后在实验板上下载,验证设计课题的正确性。
二、多功能数字钟的总体设计和顶层原理图
作为根据总体设计框图,可以将整个系统分为六个模块来实现,分别是计时模块、校时模块、整点报时模块、分频模块、动态显示模块及闹钟模块。
(1)计时模块
该模块使用74LS160构成的一个二十四进制和两个六十进制计数器级联,构成数字钟的基本框架。二十四进制计数器用于计时,六十进制计数器用于计分和秒。只要给秒计数器一个1HZ的时钟脉冲,则可以进行正常计时。分计数器以秒计数器的进位作为计数脉冲。
用两个74160连成24进制的计数器,原图及生成的器件如下:
生成的二十四进制计数器注:
利用使能端,时钟信号,清零以及预置数功能连成24进制。
用两个74160连成的60进制计数器,原图及生成的器件如下:
生成的六十进制计数器
(2)校时模块
校时模块设计要求实现校时,校分以及清零功能。
*按下校时键,小时计数器迅速递增以调至所需要的小时位。
*按下校分键,分计数器迅速递增以调至所需要的分位。
*按下清零键,将秒计数器清零。
注意事项:①在校分时,分计数器的计数不应对小时位产生影响,因而需要屏蔽此时分计数器的进位信号以防止小时计数器计数。
②利用D触发器进行按键抖动的消除,因为D触发器是边沿触发,在除去时钟边沿到来前一瞬间之外的绝大部分时间都不接受输入,
可以消除抖动。
③计时采用1HZ的脉冲驱动计数器计数,而校时则需要较高频率的信号驱动以达到快速校时的目的。因此这两种脉冲信号就需要两路选择器进行选择,条件即为是否按键。
注:D触发器用于按键的消抖,接更高的频率用于校时和校分,二路选择器用于区分是正常计时还是校时。
(3)整点报时模块
计时到59分50秒时,每两秒一次低音报时,整点时进行高音报时。以不同频率的脉冲信号区分低音和高音报时。报时的条件是计数器计数至所需要的时间点,因而需要一个比较模块,将分计数器和秒计数器的输出连至比较模块输入端完成比较过程。
注:
F1表示计数器分的高位,F0表示分的低位;M1表示秒的高位,M0表
示秒的低位。当时间为59分00,02,04,06,08进行低音报时,当为整点时进
行高音报时。SIGA为1时低音报时,SIGB为1时高音报时。
(4)分频模块
在这个系统中需要很多种不同频率的脉冲信号,这些均可以通过一个基准频率分频器生成。分频器就是一个进制很大的计数器,利用计数器的分频功能,从不同的输出位得到所需要的脉冲信号。
(4)动态显示模块
在6个不同的时间段分别将每组时间经过七段译码后输出到6个数码管,当某一组时间的七段码到达时,只点亮对应位置上的数码管,显示相应的数字,6次一个循环,形成一个扫描序列。利用人眼的视觉暂留则可以同步显示6个数字。
注:
CLK 为时钟信号,S 为计数器的小时,F 为分,M 为秒,SELOUT
为六路选择器,选择哪个数码管工作,SEGOUT 为七段译码器,使数
码管显示数字。
(6)闹钟模块
注意事项:① 设定的闹钟的时间应使用新的计数器进行存储,与正常的计时互不干扰。
生成的分频器
注: 由于clk 的频率为1024hz ,所以可以定义一个std_logic_vector(9 downto 0),使它不停地从0000000000加到1111111111然后又返回0000000000,由于最低位在clk 脉冲到来时从0变为1,然后又在下一个脉冲变回0,因此最低位的时钟周期为clk 的时钟周期的两倍,它的频率就为
clk 频率的确1/2即512hz 。同理,次高位的频率就为clk 频率的1/2 * 1/2
= 1/4,用这种方法就可以得到各种能整除1024的频率,从而实现分频。 器件
②与正常计时状态的显示切换。可以设定一个按键,用于选择是将计时时间还是将闹钟时间送至动态显示模块。
③应实现一个比较模块,当计时到与闹钟时间相等时,则驱动扬声器鸣叫。
④闹钟响声应限定在一定时间内,且在这段时间内应随时可以通过按键取消闹时状态。
闹钟调时和分以及正常计时与闹钟定时之间的选择原图及生成的器件如下:
注:
输入端CLK为时钟信号,SD清零,NAOZHONG是使计
数器正常计时和闹钟定时界面的切换,SE调闹钟的小时,SD
调闹钟的分,输出端即为闹钟的小时和分。
闹钟界面和正常计时界面的转换器件如下:
注:
S表示计时器的时,F表示计时器的分,M表示计数器的秒;
SS表示闹钟的时,FF表示闹钟的分;Q为计时和闹钟两个界面的切换
开关,ABC为输出的时间。
正常计时时间和设定闹钟时间的比较器件如下:
注:
S 表示正常计时的小时,F表示闹钟的分;
SS表示闹钟的小时,FF表示闹钟的分;Q为闹钟的开关,D当Q为1时,
并且正常计时的时间和闹钟时间相等时输出为1,否则为0。
三、心得和体会
经过一个星期对数字时钟实践的制作,从中学到了很多。首先是对EDA 的VHDL语言的更深层次认识,本来觉得EDA编程语言比较麻烦,可是接触了以后也就觉得它还是有它方便的地方,尤其是和图形编程结合的特