3.6定时报闹电路模块设计
闹钟功能模块,是建立在时分调整模块基础上的。关键点在于使用同或门,对时和分的每一位进行比较。当设定的时间和此时时间一样时,同或门输出为1,蜂鸣器发出响声。此时数字钟还在继续计时,1分钟之后,设定时间和此时时间不一样,同或门输出为0,蜂鸣器自动关闭。
- 11 -
3.7万年历电路模块设计
万年历功能模块的基础是74160为核心芯片的计数器和调整电路。其中年和月、日的切换是利用之前所提到的切换电路。日的时钟信号由小时计数器的进位信号而来,月和年依次是日和月的进位信号。
由于月分为大月、小月和平月,因此要分情况讨论。只有在大月(即1、3、5、7、8、10、12月)才会令日在31日,日信号清零,月进位。而同理平月在28日,小月在30日,日信号清零,月进位。通过卡诺图,可以求得大月=低位(D’A+DC’B’A’)*高位0+低位D’C’A’*高位1,小月=低位(D’CA’+DC’B’A)*高位0+低位D’C’BA’*高位1,平月=低位D’C’BA’*高位0.通过与非门等相连,即可得到月份的不同情况。具体电路如下图。
- 12 -
注意由于月份和日期都是从1开始,因此计数器应该使用同步置数法。在获得了月份中,大月、小月和平月的信号以后,把它们分别输给日计数器的31进制、30进制和28进制。用三态门控制哪一个日期输出到显示屏上。具体电路如下图。
- 13 -
因为闰年的规律是非百年,逢4年闰,百年,逢400年闰。当逢4年润时,对于一个数来说,只要后两位能被4整除,这个数就能被4整除,因而看十位和个位就可以了。当十位为奇数时,个位为2、6,则可以被4整除。当十位为偶数时,个位为0、4、8,则可以被4整除。显而易见,当十位用8421BCD码表示时,A=0,则十位为偶数,A=1,则十位为奇数。因此十位A=0,个位为2(0010)或6(0110),或者十位A=1,个位为0(0000)、4(0100)、8(1000)时,为闰年。当年份为整百时,即个位和十位DCBA=0000时,千位和百位应该是4的倍数,和上面分析同理。因此可用与非或门来判断闰年。
- 14 -