数字逻辑大作业1.0,用logisim画数字钟(经典实验了属于是)
开始做实验的时候也才刚刚学完时序逻辑那一章,计数器提都没提过(笑死我怀疑老师是特意这么安排的),而且logisim完全不会用,隧道什么的根本不懂【这也就导致了我后面没有力气做外观封装了,累了♀️】
最终实现的是静态显示(6个7段译码器分别显示数字),动态显示后续会使用Verilog进行实现数字钟实验2.0
实现的功能:时钟,初始时间设定,闹钟,整点报时,秒表,倒计时:)
小彩蛋(bushi):其中闹钟和倒计时到点后会有蜂鸣器响,可以自己调蜂鸣器的频率哟
请使用logisim实现一个数字钟。
要求:
(1)能够显示时分秒;
(2)能够设置开始时间;
(3)使用你自己的7段数码管显示译码电路实现;
(4)可以使用静态显示或者动态显示方法实现;
(5)依据实现的其他附加功能,酌情加分:秒表、倒计时、闹钟
J J J | K K K | Q Q Q | Q ‾ \overline{Q} Q |
---|---|---|---|
0 | 0 | Q Q Q | Q ‾ \overline{Q} Q |
0 | 1 | 0 | 1 |
1 | 0 | 1 | 0 |
0 | 0 | Q ‾ \overline{Q} Q | Q Q Q |
这个就是简单的组合逻辑电路,用LogicFriday列真值表,化简,自动生成电路图或者按照SOP自己设计电路,对着画就可以啦
各位可以继续使用J-K触发器构建相应进制的计数器,依据其真值表的原理,很快(大概?)就能画出来的
这里放一个六进制的减法计数器作为参考吧,我自己做的时候是根据真值表和输入输出变化关系不断调整的,其实这方法挺不聪明的(但是很有意思,试出来也很有成就感)
其实…计数器这个东西吧它无非就是一个有限状态机(FSM),当然了加法器也可以【但这都是我上完这门课才知道的东西了,当时还没学到,想不到也正常】…我一开始真就没意识到(用那个J-K触发器的特点去凑功能真的太痛苦了救命)
主要就是把7段数码管译码器的appearance设计成规整的7个端口,主界面连7段数码管的地方排成数字钟六位显示的样子,灵活使用主线和隧道,把杂七杂八的地方都隐藏起来,再设计一些好看的装饰分散注意力哈哈哈,就不会是我的看着令人害怕的电路图了