安徽工业大学 数字逻辑课程设计Word文档下载推荐.docx
《安徽工业大学 数字逻辑课程设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《安徽工业大学 数字逻辑课程设计Word文档下载推荐.docx(10页珍藏版)》请在冰豆网上搜索。
4
1、分、秒计时电路4
2、小时计时电路5
3、校时电路5
4、附加译码驱动电路7
(三)、数字钟的顶层电路逻辑图,电路的模拟结果:
9
1、数字钟的顶层电路逻辑图:
2、电路的模拟结果10
三、讨论:
心得体会10
四、参考文献--------------------------------------------------------------------------10
一、设计要求:
(1)计时和显示功能
采用24小时计时并以十进制数字显示时、分、秒(时从00~23,分、秒从00~59)。
(2)校时功能
可以分别对时及分进行单独校时,使其校正到标准时间;
(3)采用的器件和软件:
EDA-V实验箱软件:
MAX+PlusⅡ
二、设计思路
(一)设计思想及说明:
1.数字钟的构成
数字钟是一个将“时”,“分”,“秒”显示于人的视觉器官的计时装置。
它的计时周期为24小时,显示满刻度为23时59分59秒,另外应有校时功能和一些显示星期、报时、停电查看时间等附加功能。
因此,一个基本的数字钟电路主要由译码显示器、“时”,“分”,“秒”,“星期”计数器、校时电路、报时电路和振荡器组成。
数字钟实际上是一个对标准频率(1HZ)进行计数的计数电路。
由于计数的起始时间不可能与标准时间(如北京时间)一致,故需要在电路上加一个校时电路,同时标准的1HZ时间信号必须做到准确稳定。
通常使用石英晶体振荡
按功能要求,整个数字钟可分为计时和校时两大部分,此外采用扫描显示方式还要附加译码驱动电路。
计时电路——时间计数器电路由秒个位、秒十位计数器,分个位、分十位计数及时个位、时十位计数电路构成。
其中:
秒个位和秒十位计数器,分个位和分十位计数为六十进制计数器,而根据设计要求时个位和时十位构成的为二十四进制计数器。
时间计数单元共有:
时计数,分计数和秒计数3部分,根据设计要求时计数单元为一个二十四进制计数器,共输出为两位8421BCD码形式;
分计数和秒计数单元为六十进制计数器,共输出也为两位8421BCD码。
校时电路——当刚接通电源或走时出现误差时都需要对时间进行校正。
对时间的校正是通过截断正常的计数通路,而用频率较高的方波信号加到其需要校正的计数单元的输入端,这样可以很快使校正的时间调整到标准时间的数值,这时再将选择开关打向正常时就可以准确走时了。
译码驱动电路——译码驱动电路将计数器输出的8421BCD码转换为数码管需要的逻辑状态,并且为保证数码管正常工作提供足够的工作电流。
2.构成原理框图
(二)设计步骤,各模块组成,简要说明;
1、分、秒计时电路
分秒计时需要60进制计数,故要设计一个60进制计数器。
其可采用两片74160采用同步连接构成。
器件符号如左:
60进制计数器原理图如下:
2、小时计时电路
小时计时需要24进制计数,故要设计一个24进制计数器。
24进制计数器原理图:
3、校时电路
器件符号如右:
校时电路原理图如下:
4、附加译码驱动电路
其基本电路如下:
它主要由3个模块组成:
模6计数器Counter6,select_disp,deled。
select_disp根据模6计数器的输出将待显示的6位十进制结果分时送到七段译码器deled以产生显示字形,counter6的输出同时可以用来将显示结果在6个数码管上展示,只要时钟clk_scan的频率合适,就可以看到完整的时分显示结果。
其中,模块Counter6的AHDL源码如下:
subdesigncounter6
(
clk:
input;
q[2..0]:
output
)
variable
ss:
machineofbits(q[2..0])
withstates
(
s0=0,
s1=1,
s2=2,
s3=3,
s4=4,
s5=5
);
begin
ss.clk=clk;
table
ss=>
ss;
s5=>
s4;
s4=>
s3;
s3=>
s2;
s2=>
s1;
s1=>
s0;
s0=>
s5;
endtable;
end;
模块select_disp的AHDL源码如下:
subdesignselect_disp
sel[2..0]:
in0[3..0]:
in1[3..0]:
in2[3..0]:
in3[3..0]:
in4[3..0]:
in5[3..0]:
out[3..0]:
output;
casesel[]is
when0=>
out[]=in0[];
when1=>
out[]=in1[];
when2=>
out[]=in2[];
when3=>
out[]=in3[];
when4=>
out[]=in4[];
when5=>
out[]=in5[];
endcase;
模块deled的AHDL源码如下:
SUBDESIGNdeled
num[3..0]:
INPUT;
a,b,c,d,e,f,g:
OUTPUT;
BEGIN
TABLE
num[3..0]=>
a,b,c,d,e,f,g;
H"
0"
=>
1,1,1,1,1,1,0;
1"
0,1,1,0,0,0,0;
2"
1,1,0,1,1,0,1;
3"
1,1,1,1,0,0,1;
4"
0,1,1,0,0,1,1;
5"
1,0,1,1,0,1,1;
6"
1,0,1,1,1,1,1;
7"
1,1,1,0,0,0,0;
8"
1,1,1,1,1,1,1;
9"
1,1,1,1,0,1,1;
A"
1,1,1,0,1,1,1;
B"
0,0,1,1,1,1,1;
C"
1,0,0,1,1,1,0;
D"
0,1,1,1,1,0,1;
E"
1,0,0,1,1,1,1;
F"
1,0,0,0,1,1,1;
ENDTABLE;
END;
(三)数字钟的顶层电路逻辑图,电路的模拟结果:
2、电路的模拟结果
须设定一个1Hz的输入时钟信号和一个校时脉冲SET,模拟的设置开关信号Mode的波形如图所示,SET为高电平,Mode为低电平。
为了能够看到合适的仿真结果,假定网络时间10.0ns,总模拟时间600.0ns。
电路仿真结果如下:
三、讨论:
心得体会
通过本次课程设计,我更加的了解了设计电路的程序,对数字电路又有了进一步的认识,温习了以前学的知识当然.本次实验使我对数字电路、VHDL语言有了进一步的认识。
同时,也了解了更多的芯片及其功能和模块电路的设计方法。
再者,经过此次实验的设计画原理图,使我对MAX+PlusⅡ软件有了进一步了解,操作也更加的熟练。
加强了自己的思维能力和动手设计的能力。
四、参考文献
[1]张辉宜、陆勤主编数字逻辑实验指导书
[2]张辉宜,《数字逻辑》,中国科学技术大学出版社,2010