1、桂林电子科技大学实验报告2015-2016学年第二学期开 课 单 位 海洋信息工程学院 适用年级、专业 13级电子信息工程 课 程 名 称 EDA技术与应用 主 讲 教 师 覃琴 实 验 名 称 计时器和倒计时器系统设计 学 号 1316030515 姓 名 魏春梅 实验五 计时器和倒计时的系统设计1、 实验目的1 掌握用Verilog HDL文本输入法设计计时电路的方法,并听歌电路仿真和硬件验证,进一步了解计时器的功能和特性。2 掌握用Verilog HDL文本输入法设计倒计时电路的方法,并听歌电路仿真和硬件验证,进一步了解倒计时器的功能和特性。2、 实验原理1 计时器24小时计时器的电路框
2、图如图8.1所示。24小时计时器由2个60进制加计数器和1个24进制加计数器构成,输入CLK为1Hz(s)的时钟,经过60进制加计数后产生1分钟的进位时钟信号,在进过60进制加计数后产生1小时的进位时钟信号送给24进制加计数器进行加计数,当加计数达到23:59:59后,再来一个秒脉冲,产生时的进位输出,将两个60进制加计数器和一个24进制加计数器的输出送数码管显示。得到计时器的显示结果,其中秒脉冲有EDA实训仪上的20MHz晶振分频得到。2 倒计时器24小时倒计时器的电路图8.2如下 24小时倒计时器有2个60进制减计数器和一个24进制减计数器构成,输入CLK为1Hz(s)的时钟,经过60进制
3、减计数产生1分钟的借位时钟信号,再经过60进制减计数后产生1小时的借位时钟信号24进制减计数器进行减计数,当减计数到达00:00:00后,产生时的借位输出,同时24小时进制减计数器进行减计数,并发出提醒信号,将两个60进制减计数器和一个24进制减计数器的输出送数码管显示,得到倒计时的显示结果,其中,秒脉冲有EDA实训仪上的20MHz晶振分频得到。3、 实验设备1 EDA实训仪一台2 计算机一台(装有Quartus 2软件)4、 实验内容1 计时器 在Quartus 2软件中,按照实验原理中24小时计时器的电路框图,用Verilog HDL编程设计计时器电路,然而进行编辑编译、仿真、引脚设定,并
4、下载到EDA实训仪中进行验证。 注:用EDA实训仪上的20MHz晶振作为计时器时钟输入端,按键S8S6分别作为计时器的校时、校分、校秒输入端,拨动开关S0作为计时器的清零输入端,拨动开关S1作为计时器的暂停输入端,用数码管SEG5SEG0分别作为时、分、秒的输出端,用发光二极管L0作为进位输出端COUT。2 倒计时器在Quartus 2软件中,按照实验原理中24小时倒计时器的电路框图,用Verilog HDL编程设计倒计时器电路,然后进行编辑、编译、仿真、引脚的锁定,并下载到EDA实训仪中进行验证。注:用EDA实训仪上的20MHz晶振作为计时器时钟输入端,按键S8S6分别作为计时器的校时、校分
5、、校秒输入端,拨动开关S0作为计时器的清零输入端,拨动开关S1作为计时器的暂停输入端,用数码管SEG5SEG0分别作为时、分、秒的输出端,用发光二极管L0作为进位输出端COUT。5、 实验预习要求1 复习理论课本有关计数器的内容,并认真阅读实验指导书,分析、掌握实验原理,熟悉理论课本中Quartus 2软件的使用方法。2 按照实验内容的要求,编写相应的实验程序,写出相应的实验步骤。实验步骤1建立工程文件jishiqi。新建Verilog HDL文件编写60进制和24进制加减计时器。2建立波形仿真。3编译下载(1)源程序(2)六十进制加减计时器波形仿真图(3)二十四进制加减计时器源程序(4)二十
6、四进制波形仿真图(5)计时器原理图(6)计时器原理图波形仿真波形图中红色圆圈为延时区域。当clrn为高电平时,清零(7)结果图6、 实验总结1 总结用Verilog HDL进行分频器和计数器电路设计的方法。此次实验为计时器。Clk是秒时钟输入端;clrn是清除输入端,低电平有效。Jm,jf,js是校正秒,分,时的输入端。下降沿有效;qm7.0、qf7.0、qs7.0分别是秒、分、时的输出端,当sel为1时,为计时器,当sel为0时,为到计时器。Cout是脉冲输出端。2 对本次实验进行总结 由仿真结果得知clrn为高电平时,输出为0。当clrn为低电平时,sel为1时,qm7.0、qf7.0进行从0到59加法计数;qs7.0进行从0到23加法计数。Sel为0的时候,qm7.0、qf7.0进行从0到59减法计数;qs7.0进行从0到23减法计数。这次的实验在完成程序仿真调试过程中,出现了很多小问题,这些问题虽然简单,但真正解决起来还是比较棘手的。例如,仿真不出波形。后面发现是要设置成16进制的状态下。波形出来后,发现只实现时间加,而减法没有用到。经过检查原来是在源程序里忘记加sel的语句了。数码管显示时、分、秒的位置错乱,或者是某一位数码管不亮,原来是pin设置错误,为了解决这个问题,又重新设置pin。