欢迎来到天天文库
浏览记录
ID:42549457
大小:358.38 KB
页数:4页
时间:2019-09-17
《二十四进制计数器实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、二十四进制计数器实验报告实验成员:88155010李仲哲88155037周梓成硕件:DE2-70驱动板实验要求:使Verilog硬件描述语言设计一个基本时序逻辑电路1位24进制计数器,并可控制加减。并利用驱动板自带晶振。实验步骤:首先创建新工程,编写VerilogHDL语言设计代码。代码如下:moduleqwe(iclk/rst_n/flag/q/overflow);inputiclkjlag;输入端口声明。inputrst_n;输出端口声明。outputreg[4:0]q;分配输出信号灯q0,ql,q2,q3,q4ointegeri;outputo
2、verflow;wireclk_lHz;Divider50MHz(l^ljclkjlhz);引用分频器代码Divider50MHz.v中的变量ilhz0always@(posedgeilhzornegedgerst_n)beginif(~rst_n)q<=5'hO;elsebeginif(flag)i=1;当变量为1时计数器加。elsei=-1;反之计数器减。if(5'hl7==q)q<=5'h0;elseq<=q+i;endendassignoverflow=5'hl7==q;其屮flag为控制加减开关变量,我们为其分配开关SW0引脚为PIN_AA
3、23。由于不可使用外部吋钟,而驱动板上的晶振输出信号为50MHz不可用,因此我们需要将其削减转化1Hz的秒脉冲。设计代码如下:moduleDivider50MHz(inputCR,CLK_50M,输入端口声明。outputregCLK_lHzOut输出端口及变量的数据声明。);50MHz时钟输入。parameterCLK_Freq=50000000;parameterOUT_Freq=l;输出lhz时钟信号。reg[24:0]Count_DIV;always@(posedgeCLK_50MornegedgeCR)beginif(!CR)beginCL
4、K_lHzOut<=0;Count_DIV<=0;endelsebeginif(Count_DIV<(CLK_Freq/2*OUT_Freq))CountDIV<=CountDIV+1fbl;elsebeginCount_DIV<=0;分频器输出清零CLK_lHzOut<=~CLK_2HzOut;输出信号取反endendendEndmodule本次实验我们使用了5盏绿灯来反应输岀信号q0到q4o引脚分配如下:NodeNameoverflow«》Edit:DrectxjnLocaoon[1/umokInputOutputPIN.AA236PIN-AD1
5、5
6、7PIN.Y266PIN.Y246PINJ276PINW236PINW256Output模拟信号:209Mi:・:・:・:・:・:・:・:・:・:・:・:・:・:・”:・":・:・:・:::・:":・:・:・::・:・::・:::4:・:409att>lKSWSXXKKKKSXXXXXXXXXXXXXXXXJWSXXXXXXXXXXXXXXffiXXX^完成上述试验后编译运行程序无误后,我们将程序下载到驱动板,同时将开关swO拨上使其输出信号为1,让计数器处于加计数状态。便可见到计数器正常运转右下角绿灯开始闪烁,将swO拨下计数器开始做减计数rl
7、®evHur844444□ft±(±±(*ifc(uuumum—C-«-Crr»CrlCi-CHf«Cr厂CklCf—r»Cr謀卵药叩呼叩卩叩伴叩guM11劇陀口门■flaae"j—■・-•一一.■I—.•I冷3■•[殳事y'・■
此文档下载收益归作者所有