在QuartusⅡ上进行程序设计,设计50MHz转1Hz的分频器,并作为含异步清0和同步时钟使能的十进制加法计数器(0~9)的输入时钟,数字通过数码管显示
1条回答 默认 最新
- 老皮芽子 2022-10-27 18:05关注
代码分 5 部分
1Hz 分频
0-9 计数
7段LED数码管译码
整合在一起的 TOP
测试激励代码module clk_fp1s # //输出 1Hz ( parameter CLK_IN_FREQ = 50*1000*1000 //50MHz ) ( input clk, output clk1s //1Hz ); reg clk1 = 0; reg [31:0] cnt = 0; assign clk1s = clk1; always @(posedge clk) begin if(cnt < CLK_IN_FREQ/2-1) cnt <= cnt + 1; else begin cnt <= 0; clk1 <= !clk1; end end
module cnt_10 //0-9 同步计数器,异步清零 ( input clk, input rst_n, output [3:0] dat ); reg [3:0] cnt = 0; assign dat = cnt; always @(posedge clk or negedge rst_n) //rst_n 异步复位 begin if( rst_n == 0 ) cnt <= 0; else if(cnt < 9) cnt <= cnt + 1; else cnt <= 0; end endmodule
module led_7s //led 7 段数码管译码 0-F ( input [3:0] dat, output reg [6:0] led7s //{a,b,c,d,e,f,g} //7段LED 排列 a->led7s[6] g->led7s[0] ); always@(*) begin case(dat) 4'b0000:led7s=7'b0111111; //0 4'b0001:led7s=7'b0000110; //1 4'b0010:led7s=7'b1011011; //2 4'b0011:led7s=7'b1001111; //3 4'b0100:led7s=7'b1100110; //4 4'b0101:led7s=7'b1101101; //5 4'b0110:led7s=7'b1111101; //6 4'b0111:led7s=7'b0000111; //7 4'b1000:led7s=7'b1111111; //8 4'b1001:led7s=7'b1101111; //9 4'b1010:led7s=7'b1110111; //A 4'b1011:led7s=7'b1111100; //B 4'b1100:led7s=7'b0111001; //C 4'b1101:led7s=7'b1011110; //D 4'b1110:led7s=7'b1111001; //E 4'b1111:led7s=7'b1110001; //F endcase end endmodule
module top_led_10 ( input clk, input rst_n, output [6:0] led7s_a //个位 ); wire clk1s; wire [3:0] cnts; clk_fp1s u1 ( .clk (clk), //输入 50MHz .clk1s (clk1s) //输出 1Hz ); cnt_10 u2 //0-49 同步计数器,异步清零 ( .clk (clk1s), .rst_n (rst_n), .dat (cnts) ); led_7s ua //个位 ( .dat (cnts), .led7s (led7s_a) ); endmodule
`timescale 1ns / 1ns module led_cnt10_sim(); reg clk; reg rst_n; initial begin clk = 0; rst_n = 0; #100 rst_n = 1; end always #20 clk = ~clk; //50MHz wire [6:0] led7s_a; //个位 top_led_10 u1 ( .clk (clk), .rst_n (rst_n), .led7s_a (led7s_a) ); endmodule
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥17 pro*C预编译“闪回查询”报错SCN不能识别
- ¥15 微信会员卡接入微信支付商户号收款
- ¥15 如何获取烟草零售终端数据
- ¥15 数学建模招标中位数问题
- ¥15 phython路径名过长报错 不知道什么问题
- ¥15 深度学习中模型转换该怎么实现
- ¥15 Stata外部命令安装问题求帮助!
- ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
- ¥15 TYPCE母转母,插入认方向
- ¥15 如何用python向钉钉机器人发送可以放大的图片?