实验4-计数器加译码器设计和基于LPM宏模块的计数器设计.docVIP

  • 9
  • 0
  • 约1.55千字
  • 约 7页
  • 2019-06-10 发布于浙江
  • 举报

实验4-计数器加译码器设计和基于LPM宏模块的计数器设计.doc

实验报告 实用数字电子设计基础 实验名称:计数器加译码器设计和基于LPM宏模块的计数器设计 实验目的:初步掌握Quartus II基于LPM宏模块的设计流程与方法并由此引出基于LPM模块的许多其他实用数字系统的自动设计技术。 实验内容: 根据教材175页8.5节的流程,利用Quartus II完成基于LPM宏模块的计数器设计编辑和仿真测试等步骤,给出仿真波形。 在实验系统上硬件测试,验证此设计的功能并进行解说。对于引脚锁定以及硬件下载测试。 计数器加译码器设计 (1)程序输入: dec17s程序: module dec17s(a,led7s); input [3:0] a; output [6:0] led7s; reg [6:0] led7s; always @(a) case(a) 4b0000: led7s = 7b0111111; 4b0001: led7s = 7b0000110; 4b0010: led7s = 7b1011011; 4b0011: led7s = 7b1001111; 4b0100: led7s = 7b1100110; 4b0101: led7s = 7b1101101; 4b0110: led7s = 7b1111101; 4b0111: led7s = 7b0000111; 4b1000: led7s = 7b1111111; 4b1001: led7s = 7b1101111; 4b1010: led7s = 7b1110111; 4b1011: led7s = 7b1111100; 4b1100: led7s = 7b0111001; 4b1101: led7s = 7b1011110; 4b1110: led7s = 7b1111001; 4b1111: led7s = 7b1110001; default: led7s = 7b0000000; endcase endmodule count的程序: module count(en,clk,clr,cout,outy); input en,clk,clr; output [3:0]outy; output cout; reg [3:0]outy; always @ (posedge clk or posedge clr) begin if(clr) outy=4b0000; else if(en) begin if(outy==4b1111) outy=4b0000; else outy=outy+1b1; end end assign cout=((outy==4b1111)en)?1b1:1b0; endmodule (2)电路图: (3)编译: (4)引脚锁定: (5)仿真报告: (6)分析报告: 键3控制使能,键4控制清零,时钟clock0选择4Hz,按下键3,数码管8开始从0开始计数,一直到F,重新开始,继续循环从0开始,按下键4立即清零。 基于LPM宏模块的计数器设计 (1)电路图: (2)编译: (3)引脚锁定: (4)仿真报告: (5)分析报告: 键3控制使能,键4控制清零,时钟clock0选择4Hz,按下键3,数码管8开始从0开始计数,一直到F,重新开始,继续循环从0开始,按下键4立即清零。

文档评论(0)

1亿VIP精品文档

相关文档