EDA实验报告Ⅱ多功能数字钟Word格式.docx
- 文档编号:21919302
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:16
- 大小:559.15KB
EDA实验报告Ⅱ多功能数字钟Word格式.docx
《EDA实验报告Ⅱ多功能数字钟Word格式.docx》由会员分享,可在线阅读,更多相关《EDA实验报告Ⅱ多功能数字钟Word格式.docx(16页珍藏版)》请在冰豆网上搜索。
1.名词
1.summary
2.abstract
目录
摘要………………………………………………………………………………2
一、正文………………………………………………………………………4
1、设计要求说明………………………………………………………………4
1.1实验名称……………………………………………………………………4
1.2实验内容……………………………………………………………………4
1.3题目简介……………………………………………………………………4
1.4设计基本要求………………………………………………………………4
1.5设计提高部分要求…………………………………………………………4
2、方案论证……………………………………………………………………4
2.1、计时器基本功能整体框图………………………………………………4
2.2、整体电路的工作原理……………………………………………………5
3、各子模块设计原理…………………………………………………………5
3.1、脉冲发生电路……………………………………………………………5
3.2、计时电路…………………………………………………………………7
3.3、校分校时电路……………………………………………………………8
3.4、清零电路与保持电路……………………………………………………9
3.5、译码显示电路……………………………………………………………10
3.6、报时电路…………………………………………………………………12
3.7、闹铃电路(功能拓展)…………………………………………………14
3.7.1、闹铃时间的设定电路…………………………………………………14
3.7.2、闹铃的显示电路………………………………………………………15
3.7.3、闹铃时间与计时时间的比较电路……………………………………15
3.7.4、蜂鸣器工作(闹铃)电路……………………………………………15
4、编译与仿真…………………………………………………………………15
5、下载…………………………………………………………………………16
二、结论…………………………………………………………………………16
三、实验中的问题与感想………………………………………………………16
参考文献…………………………………………………………………………16
一、正文:
1、设计要求说明
1.1、实验名称:
多功能数字钟设计
1.2、实验内容:
利用QuartusII软件设计一个数字钟,并下载到SmartSOPC实验系统中。
1.3、题目简介:
设计一个数字计时器,可以完成00:
00:
00到23:
59:
59的计时功能,并在控制电路的作用下具有保持、清零、快速校时、快速校分、整点报时等功能。
1.4、设计基本要求:
(1)、能进行正常的时、分、秒计时功能;
(2)、分别由六个数码管显示时分秒的计时;
(3)、K1是系统的使能开关(K1=0正常工作,K1=1时钟保持不变);
(4)、K2是系统的清零开关(K2=0正常工作,K2=1时钟的分、秒全清零);
(5)、K3是系统的校分开关(K3=0正常工作,K3=1时可以快速校分);
(6)、K4是系统的校时开关(K4=0正常工作,K4=1时可以快速校时);
(7)、使时钟具有整点报时功能(当时钟计到59’53”时开始报时,在59’53”,59’55”,59’57”时报时频率为512Hz,59’59”时报时频率为1KHz,);
1.5、设计提高部分要求:
(1)、闹表设定功能;
(2)、自己添加其他功能;
2、方案论证
2.1、计时器基本功能整体框图:
2.2、整体电路的工作原理
根据上述的计时器整体框图,可见电路的中心在于计时电路的设计。
由于题目要求完成00:
59的计时功能,所以对于计时电路,我们需要3个计数模块,一个模24和两个模60,分别作为时钟和分钟以及秒钟。
脉冲发生电路是电路中所有脉冲的来源,题目要求(基本要求)具有计时功能,因此需要1HZ的频率;
而对于整点报时功能,就需要1KHZ和512HZ的频率。
综上所述,我们至少需要产生1HZ、1KHZ和512HZ三个频率。
实验中提供了48MHZ的频率,可以通过分频来产生我们需要的频率。
校分、校时及清零电路的实现相对比较简单。
对于校分、校时功能,可以单独给计分和计时计数器提供1HZ或者2HZ的脉冲来实现;
对于清零功能,可以利用计数芯片本身的清零功能实现。
报时电路,是希望当计数器计数到某些时刻时,给蜂鸣器施以一定高脉冲使其发声,这可以通过门电路来实现。
本实验要求利用动态显示的方法来显示时、分、秒。
实验中时、分、秒都是两位数字,因此需要六个数码管来分别显示各自的十位与个位。
由于是动态显示,每个数码管都与同一个7447相连,因此需要一个24选4的数据选择器来轮流选中六个数字以及一个模6的计数器来轮流选中六个数码管,数据选择器与模6计数器应该相配合,它们的频率应一致,且要比较高。
3、各子模块设计原理
3.1、脉冲发生电路
实验台只提供48MHZ的矩形脉冲,而由以上的分析可知,实验中需用到1HZ、2HZ、512HZ和1KHZ的频率,所以我们需要对已有的48MHZ进行分频。
在此,先使用一个模24分频器将48MHZ分频为2MHZ,然后通过两个模1000分频器分频得到2KHZ和2HZ,最后使用三个模2分频器,分别将2KHZ分频为1KHZ和500HZ、将2HZ分频得到1HZ,如图3-1所示。
为简单起见,以500HZ代替512HZ。
图3-1脉冲分频原理图
在设计模24分频器和模1K分频器时,我使用了74160BCD码十进制计数器芯片,它具有计数、清零、置数和禁止计数的4种功能,其逻辑符号如右图所示。
由于是异步清零,因此设计时,对于模24计数器,当其计数到24时使计数器清零,从新计数;
对于模1K分频器,当其计数到1000时使计数器清零,从新计数。
因为在计时电路中设计了模24计数器,其具体设计见“计时电路”部分。
作为分频器使用时,以模24计数器A1引脚为输出,这样就起到了24分频的作用。
模1K分频器的设计见图3-3。
图3-3模1K分频器
模2计数器的设计是应用了JK触发器的翻转功能,具体实现见图3-4。
图3-4模2分频器
总的脉冲发生电路原理图如图3-5所示。
图3-5总的脉冲发生电路原理图及其模块化结构
3.2、计时电路
计时电路分为三部分,分别为计秒、计分、计时,其中计秒和计分部分相同,都是以模60计数器为核心,计时部分以模24计数器为核心。
电路在正常工作时,计秒部分以1HZ为脉冲输入,当计时到59秒时,计数器归0,同时向计分部分计数器发出一个脉冲信号,计分部分的计数器计数一次;
同理,当计分部分的计数器计时到59分时,计数器归0,同时向计时的计数器发出一个脉冲信号,使其计数一次;
当计时部分的计数器计时到23时时,计数器归0。
电路的关键在于各部分计数器的设计,以及各计数器之间信号的传输。
在此,依然采用74160同步十进制计数器为各计数器的核心。
各计数器的原理图如下图所示。
图3-6模24计数器
图3-7模60计数器
将模24计数器与模60计数器串联,模24计数器以模60计数器的进位作为时钟输入,进仿真如图3-8所示,其中“00”代表模60计数器的个位,“01”代表模60计数器的十位,“10”代表模24计数器的个位,“11”代表模24计数器的十位,“CLK”为模60计数器的时钟输入。
图3-8模60计数器与模24计数器的串联仿真图
计时电路的基本设计如图3-9所示,图中计数器从左到右依次是秒、分、时。
图3-9计时电路的基本设计原理图
3.3、校分校时电路
电路之所以要设计校分校时电路,是为了快速对分钟与时钟进行调整,根据其计数原理,很容易知道计数器计数的快慢取决于其输入脉冲的频率,因此只需要改变其计数器的计数信号的频率即可,将原本来自上一级的计数信号人为的改变为1HZ或2HZ(本实验中改为2HZ),这样就达到了快速校分、校时的目的。
具体实现见图3-10。
图3-10校分、校时电路
图中D触发器作为消颤开关使用,其输入脉冲可以是其他频率的高频脉冲。
3.4、清零电路与保持电路
清零电路与保持电路的设计可借助于74160计数器本身的清零功能和保持功能来实现。
在具体实现时,对模24计数器和模60计数器进行适当的改变即可,如图3-11和图3-12所示。
图3-11模24计数器作校分、校时改进后的电路图
图3-12模60计数器作校分、校时改进后的电路图
由图可见,只要人为的对保持开关与清零开关进行控制,就可以达到保持或者清零的目的。
3.5、译码显示电路
根据设计要求,实验需利用动态显示的方法来显示时、分、秒。
如图3-13所示。
图3-13译码电路原理图
图中,计数器为模6计数器,它的输入频率CLK2相对较高。
24选4数据选择器与74138译码器均以该计数器的信号输出作为时钟信号。
其中24选4数据选择器根据不同的A0、A1、A2值,循环选择输出秒的个位与十位、分的个位与十位、时的个位与十位,即图中的SL、SH、ML、MH、HL、HL,到显示译码器7447进行译码显示。
同时,相对应的,74138译码器也根据不同的A0、A1、A2值,循环选通6个数码管。
虽然个数码管轮流选通,但是由于频率很快,所以在人的视觉中是常亮的。
在具体电路设计时可分为3部分,即计数器部分、译码部分和24选4数据选择器部分。
计数器部分:
与上面的计数器设计类似,该模6计数器也以74160十进制BCD码计数器作为核心,电路如图3-13所示。
图3-13模6计数器
由于74160为异步清零,根据图3-13可知,当计数器计数到“BCA”为“110”,即6时,“CLRN”变为低电位,使计数器马上清零,开始下一轮计数。
图中所示计数器的输入脉冲为1KHZ。
译码部分:
译码电路分两部分,一是显示译码,二是动态译码(轮流选中数码管)。
其中显示译码器以24选4数据选择器的4个输出为译码信号。
图3-14显示译码电路
图3-15动态译码电路
24选4数据选择器部分:
由于没有现成的24选4数据选择器,因此需要进行组合产生24选4数据选择器,在此,为方便起见,选用4个8选1数据选择器74151,每个74151只使用“D0~D5”6个数据输入引脚。
它们以上述模6计数器的输出为输入脉冲,因此它们将同时选中“D0”,并依次循环选中“D0”、“D1”、“D2”、“D3”、“D4”“D5”,送到输出端输出。
根据上述数据选择器的特点,为了实现动态显示,可以将秒的个位的4个输出分别送到4数据选择器的“D0”,将秒的十位的4个输出分别送到个4数据选择器的“D1”,将分的个位的4个输出分别送到4个数据选择器的“D2”,将分的十位的4个输出分别送到4个数据选择器的“D3”,……依次类推。
将4个74151的输出送至7447译码显示,这样就实现了动态显示的功能。
3.6、报时电路
根据实验要求,当时钟计到59’53”时开始报时,在59’53”,59’55”,59’57”时报时频率为512Hz(低鸣报时),59’59”时报时频率为1KHz(高鸣报时)。
蜂鸣器的总体控制电路如图3-16所示,一旦有相应的控制信号输入,则蜂鸣器就会开始鸣叫。
图3-16蜂鸣器的总体控制电路
由以上的,报时电路的设计主要在于500HZ控制信号与1KHZ控制信号的获得,这可以通过简单的逻辑门电路的组合来实现,具体设计方法如下。
首先设计获得低鸣报时电路的控制信号。
由于时钟在59’53”,59’55”,59’57”时报时,可知,当计分计数器为59分,计秒计数器在53、55、57时将产生控制信号。
当达到59分时,计分计数器输出为:
十位D11C11B11A11=0101,个位D10C10B10A10=1001。
因此得59分的信号产生电路如图3-17所示。
图3-1759分信号产生电路
BA
而计秒计数器要在53秒、55秒、57秒均产生信号,因此对于其个位,可列表如下:
(设个位为DCBA)
DC
00
01
11
10
1
由表得3、5、7的控制信号为
。
由于个位最高计数到9,即1001,得S可简化为
因此的53秒、55秒、57秒信号产生电路如图3-18所示。
图3-1853~57秒信号产生电路
59秒的信号产生电路与59分信号产生电路相似,如图3-19所示。
图3-1959秒信号产生电路
通过以上的分析与设计,我们得到了59分,59秒,53~57秒的信号,利用这些信号即可用来获得500HZ控制信号与1KHZ控制信号,最终得到蜂鸣器的控制电路如图3-20所示。
图3-20蜂鸣器的控制电路
3.7、闹铃电路(功能拓展)
闹铃功能是指,人为任意设定一个闹铃时间,包括时、分,当计时器计时到该设定时间时,蜂鸣器工作,闹铃时间到。
由此可见,闹铃电路的设计包括闹铃的设定电路、闹铃的显示电路、闹铃时间与计时时间的比较电路以及蜂鸣器工作(闹铃)电路。
3.7.1、闹铃时间的设定电路
为了能实现之后的闹铃时间与计时时间的比较,需要对设定的闹铃时间进行保存,因此可以再使用一个模24计数器和一个模60计数器分别作为时与分,并利用它们的保持功能进行闹铃时间的设定与保存。
具体电路实现见图3-21。
图3-21闹铃时间的设定电路
3.7.2、闹铃的显示电路
为了设定闹铃,就需要显示闹铃时间,而限于数码管数目,需要一个开关来控制数码管显示的是闹铃时间还是计时时间。
该显示切换开关功能就是在闹铃时间与计时时间之间做选择,可通过下面的电路实现(图3-22)。
图3-22一位闹铃时间与一位计时时间之间的切换示意图
该电路实质上就是一个2选1数据选择器。
在进入24选4数据选择器之前,对闹铃时间于计时时间的相对应的每一位都作如上的处理,就可以在显示时对闹铃时间与计时时间进行切换。
3.7.3、闹铃时间与计时时间的比较电路
如果要判断是否到达闹铃时间,就需要对闹铃时间的每一位和对应的计时时间的每一位进行比较,并且只有在所有的位都对应相等时,才算作闹铃时间到,开始闹铃。
由此可知,需要比较的位总共有16对,如果选用7485比较器,则需
要4个该比较器。
具体设计电路如图3-23所示。
图3-23闹铃时间与计时时间的比较电路
3.7.4、蜂鸣器工作(闹铃)电路
如果以500HZ驱动下的蜂鸣器作为闹铃,则可以对上面报时电路中的500HZ控制信号作适当改动即可,如将原有的500HZ控制信号与闹铃信号经过一个2输入的或门,以其输出作为新的500HZ控制信号。
4、编译与仿真
在设计过程中对个子模块分别进行编译与仿真,确保设计无误,尤其是脉冲发生电路和计时电路。
5、下载
经过编译与仿真没有错误之后,则可将程序下载至FPGA芯片,但在此之前要先进行管脚分配。
根据教材分配好管脚之后,即可将程序下载到FPGA芯片上,进行运行。
二、结论
通过将程序下载运行,最终确定程序没有错误。
三、实验中的问题与感想
问题:
在整个实验中,我遇到两个问题,一是计数器不能正确计数,当两片74160级联后,若后一片以前一片的进位为脉冲信号,后一片计数器总是在前一片计数器计数到8时就已经计数了。
通过分析,这是由于74160计数器,一旦计数到9就马上产生一个进位信号,进位引脚电平由低电平变成高电平,而它又是以上升沿触发的计数器,因此后一片计数器马上就计数了。
为了解决这一问题,我在前一片计数器的进位进入后一片计数器之前先经过一个D触发器,使得在前一片计数器从9变作0时后一片计数器才计数一次,这样就避免了上述问题。
遇到的第二个问题是开关的抖动问题。
实验开始我并没有使用D触发器来组成消颤开关,这样在运行程序时,每每切换保持开关,使继续开始计数时,电路总是不能正常连续计数,而是跳变到一个不确定的数字开始计数。
在采用了D触发器组成的消颤开关之后,该问题得到了解决。
感想:
通过整个实验的学习,我认识到了独立思考的重要性。
记得在做实验的第一天,为了设计一个模48计数器,我花了整整一天的时间也没能完成,原因在于对计数器芯片74160的不了解,以上来就动手做,这使得我带有一种盲目性,以至于遇到了上述第一个问题,后来通过看书,了解到74160为同步计数,异步清零,这才顺利设计出了模48计数器。
参考文献:
【1】《数字逻辑电路与系统设计》,蒋立平主编,姜平谭雪琴花汉兵编,电子工业出版社
【2】《EDA实验指导书》,南京理工大学,电子技术中心
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 实验 报告 多功能 数字