1、目录目录 第一章 设计说明4 第二章 程序设计4 第三章 波形仿真10 第四章 管脚锁定及硬件连线15 第五章 总结16 第六章 参考文献.17 第一章第一章 设计说明设计说明 1.设计思路设计思路 自动电子钟显示小时、分、秒,秒满 60 分进 1,分钟满 60 小时进 1,小时计满 24 完 成一个循环。其中秒、分、时低位满大于 9 时向高位进 1,秒、分高位大于 5 时向前变量的 低位进 1,小时高位大于 3 时变为 0。因为显示在数码管上,所以 6 个变量的位数应该相同。 最大计数值为 9, 所以选择 4 位二进制数表示。 计时功能、 校正功能的变量都有小时和分钟, 故用一个开关来选择功
2、能。校正功能的校时、较分也用开关选择,清零功能,用开关实现。 整点报时功能,使用蜂鸣器,输出 3 秒高电平。 用 2MHZ 的高频率来进行动态数码管扫描。由于数码管具有余辉特性和人眼有视觉暂留 现象,给人眼的视觉印象就会是连续稳定地显示。因此只要每位数码管显示间隔足够短(即 循环频率足够高) ,数码管就会稳定地显示。本设计使用 6 个数码管,高频循环选中,相当 于显示某一时刻的时间。 2.模块介绍模块介绍 本设计使用 3 个模块,一个功能模块,一个译码显示模块,一个顶层模块。 jshefm 模块为功能模块。在给 1hz 的时钟信号下,当 tu rn 为高电平时,实现清零功能。当 turn 为低
3、电平时,开始选择计时或校正功能。其中, 当 xuanze 为高电平时,实现计时功能,xuanze 为低电平时,实现校正功能。当 turn1 为高电 平时为分校正,当 turn1 为低电平时对小时校正。校正频率均为 1hz。当分为 0 时,秒小于 3 时,sound 输出高电平,实现整点报时功能。 Shumaguan11 为译码显示模块。在 CLK1000 高频的时钟信号下,六个数码管依次选中 且高频循环。小时、分、秒的高位和低位分别被赋给 6 个数码管,然后分别显示时间。 顶层模块将以上两个模块组合起来,功能模块的输出作为译码显示模块的输入,以达 到设计要求。 3.真值表真值表 (1)功能模块
4、 十进制计数器 Clk Sec1/min1/hour13:0 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 六进制计数器 Clk Sec1/min17:4 0000 0001 0010 0011 0100 0000 三进制计数器 Clk Hour7:4 0000 0001 0010 0000 注:以上 clk 为不同的时钟信号 (2)显示译码模块 Hour1/min1/sec17:4(3:0) Q 0000 0111111 0001 0000110 0010 1011011 0011 1001111 0100 1100110 0101 11
5、01101 0110 1111101 0111 0000111 1000 1111111 1001 1101111 1010 1000000 CLK1000 SS 000 001 010 011 100 101 000 第二章第二章 程序设计程序设计 1.顶层模块程序设计:顶层模块程序设计: module clock(sound,Q,SS,turnfw,xuanze,turnm,clk1hz,CLK1000); input xuanze,turnfw,turnm,clk1hz,CLK1000; output 6:0Q; output sound; output2:0SS; wire7:0 x1; wire7:0 x2; wire7:0 x3; jshefmu1(.hour1(x1),.min1(x2),.sec1(x3),.clk1hz(clk1hz),.turnfw(turnfw),.xuanze(xuanze),.turn1(t urn1),.sound(sound); shumaguan11 u2(.CLK1000(CLK1000),.Q(Q6:0),.SS(SS2:0),.sec(x3),.min(x2),.hour(x1); endmodule 2.功能模块功能模块程序设计程序设计: module jshefm (clk1hz