quarter ii 4位数码管显示实验.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实用文档 标准 贵州大学实验报告 学院:电气工程学院 专业:测控技术与仪器 班级:测仪131 姓名 学号 实验组 实验时间 2016.12.2 指导教师 成绩 实验项目名称 4位数码管显示实验 实验目的 通过利用硬件设计语言veriloag设计4位数码管显示电路、理解 Quartus II平台进行硬件开发的方法、深入理解verilog语言及其设计方法。 实验要求 集中授课 实验原理 原理框图如下图4-1所示 FPGA控制数码管的动态扫描,采集数据和地址总线的数据,使能不同位的数码管,并将采集到的数据依次传送给段选译码模块,最后输出对应数字的段码,控制数码管显示对应总线的数据。 图4-1 原理框图 实验仪器 PC机、Quartus II软件、Keil μVision2软件 实验步骤 首先,制作1位数码管显示电路,用verilong语言写。 module seg7(clk,rst_n,data,seg,sel); input clk; input rst_n; input [3:0]data; output reg[7:0] seg; output reg[2:0] sel; always @ (posedge clk or negedge rst_n) begin if(!rst_n) begin sel= 0; end else begin sel= 0; end end always @(*) begin if(!rst_n) begin seg=8b1111_1111; end else begin case(data) 0: seg=8b1100_0000; 1: seg=8b1111_1001; 2: seg=8b1010_0100; 3: seg=8b1011_0000; 4: seg=8b1001_1001; 5: seg=8b1001_0010; 6:seg=8b1000_0010; 7:seg=8b1111_1000; 8:seg=8b1000_0000; 9:seg=8b1001_0000; 10:seg=8b1000_1000; 11:seg=8b1000_0011; 12:seg=8b1100_0110; 13:seg=8b1010_0001; 14:seg=8b1000_0110; 15:seg=8b1000_1110; default:seg=8b1111_1111; endcase end end endmodule 测试模块 `timescale 1 ns/ 1 ps module seg7_tb; reg clk; reg [3:0] data; reg rst_n; wire [7:0] seg; wire [2:0] sel; initial begin clk=1; rst_n=0; data=10; # 200.1 rst_n=1; end always # 10 clk = ~clk; seg7 seg7( .clk(clk), .rst_n(rst_n), .data(data), .seg(seg), .sel(sel) ); Endmodule 2、例化元件 3、4位数码管的设计 Frep模块 module freq( clk, rst_n, clk_1k ); input clk; input rst_n; output reg clk_1k; reg[19:0] count; always @ (posedge clk or negedge rst_n) begin if (!rst_n) begin clk_1k =1; count =0; end else begin if (count24999) count =count+1; else

文档评论(0)

dmz158 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档