上面的数组依旧是xuan,每个时刻只有一个有效信号保证一个数码管亮。下面的数组是guan,数码管译码器显示的数据。每个时刻xuan和guan都会发生相应的改变。
八. 实验故障及问题分析:
1.画全加器原理图时,编译总是没有通过。 原因:画图时将线连入了半加器的模块里面:
正确连接方式:
反思:认真仔细是实验做好的必要保证。
2.实验一的(3)需要注意的事项:要保证使能端能使译码器正常工作。
3.第二次实验8421BCD转余三码:
概念理解有误,余三码的范围应该是从0011至1100,而不是0011
至1001,所以:
的余三码,应该用VHDL描述如下:
不是完整
4.第三次实验的分频器clear=0时,是指状态又从0开始记,而非立即将输出置零。
5.最初设计实验四的时候没有考虑到clk在实际实验板上工作只有四种频率状态,因此最初没有加分频器,虽然仿真波形没有问题,但是实验板上工作时可能会因为变化过快而看不见需要显示的结果,因此在VHDL编程要加入一个分频器。所以改为了上面最终的代码。
九. 实验总结
一个月前,我们不知道VHDL,不会用Quantus,不清楚数电实验需要做些什么。现在,我们可以用Quantus去实现我们想要的功能,用VHDL通过不同的语句去设计我们的实验,也明白了数电实验的大致内容。每每看着仿真出来一个个符合计算结果的波形,理论和实际的完美结合总会让我们不胜欢喜。 实验是将理论学习知识应用的过程,我们在设计每一个实验之前都应该弄清楚实验原理,预测到应有的结果,如果实验过程中发现偏差,要及时分析调整。而且作为一名工科学生,以后很可能成为一名工程师,细心严谨是我们必须具有的特点,不能粗心毛躁,要静下心认真做实验,这样才能高效完成实验。
耐心,认真,灵活。我们应该对自己的实验负责,让它不断完善,不只是符合要求,更要用我们已有的知识去设计出更好的方案,创新性的完成实验,比如:实验四就可以通过拨码开关输入2个二进制数来做选择,直接将三个实验在一个entity中完成。我通过这一个月的实验学会了熟练使用Quantus,也大概了解了VHDL语言,还发现了一些理论学习中误解的知识点,真的收获很多,非常开心。虽然每次都改了不少错,预习也花了不少时间,但是最后所有实验都运行出了正确的结果,而且实验原理也都深深地留在了我的脑海,有了这些,一切付出都是值得的!