专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
FPGA
用Verilog语言怎么写一个60进制的计数器然后显示在数码管上
2019-07-16 00:29
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
FPGA
7252
19
1305
小弟刚学
FPGA
用的是EP4CE6 现在想写一个60进制的计数器 然后在数码管上显示出来 用verilog写 但想了好几天没想出来 去大侠指导下 或给个程序看看 小弟感激不尽。。。。。拜托了
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
孟凡良
2019-07-16 22:16
列扫描模块
module column_scan_module
(
CLK, RSTn, Column_Scan_Sig
);
input CLK;
input RSTn;
output [1:0]Column_Scan_Sig;
/*****************************/
parameter T10MS = 18'd199_999;
/*****************************/
reg [17:0]Count1;
always @ ( posedge CLK or negedge RSTn )
if( !RSTn )
Count1 <= 18'd0;
else if( Count1 == T10MS )
Count1 <= 18'd0;
else
Count1 <= Count1 + 18'b1;
/*******************************/
reg [1:0]t;
always @ ( posedge CLK or negedge RSTn )
if( !RSTn )
t <= 2'd0;
else if( t == 2'd2 )
t <= 2'd0;
else if( Count1 == T10MS )
t <= t + 1'b1;
/*********************************/
reg [1:0]rColumn_Scan;
always @ ( posedge CLK or negedge RSTn )
if( !RSTn )
rColumn_Scan <= 2'b10;
else if( Count1 == T10MS )
case( t )
2'd0 : rColumn_Scan <= 2'b10;
2'd1 : rColumn_Scan <= 2'b01;
endcase
/******************************/
assign Column_Scan_Sig = rColumn_Scan;
/******************************/
endmodule
加载中...
查看其它19个回答
一周热门
更多
>
相关问题
如何用FPGA驱动LCD屏?
5 个回答
请教一下各位专家如何用FPGA做eDP接口?
6 个回答
FPGA CH7301c DVI(显示器数字接口)没有数字输出
7 个回答
100颗FPGA的板子,开开眼界
6 个回答
求教自制最小系统版
10 个回答
相关文章
嵌入式领域,FPGA的串口通信接口设计,VHDL编程,altera平台
0个评论
Xilinx的FPGA开发工具——ISE开发流程
0个评论
基于FPGA的详细设计流程
0个评论
干货分享,FPGA硬件系统的设计技巧
0个评论
一种通过FPGA对AD9558时钟管理芯片进行配置的方法
0个评论
×
关闭
采纳回答
向帮助了您的知道网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
FPGA
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
×
付费偷看金额在0.1-10元之间
确定
×
关闭
您已邀请
0
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
module column_scan_module
(
CLK, RSTn, Column_Scan_Sig
);
input CLK;
input RSTn;
output [1:0]Column_Scan_Sig;
/*****************************/
parameter T10MS = 18'd199_999;
/*****************************/
reg [17:0]Count1;
always @ ( posedge CLK or negedge RSTn )
if( !RSTn )
Count1 <= 18'd0;
else if( Count1 == T10MS )
Count1 <= 18'd0;
else
Count1 <= Count1 + 18'b1;
/*******************************/
reg [1:0]t;
always @ ( posedge CLK or negedge RSTn )
if( !RSTn )
t <= 2'd0;
else if( t == 2'd2 )
t <= 2'd0;
else if( Count1 == T10MS )
t <= t + 1'b1;
/*********************************/
reg [1:0]rColumn_Scan;
always @ ( posedge CLK or negedge RSTn )
if( !RSTn )
rColumn_Scan <= 2'b10;
else if( Count1 == T10MS )
case( t )
2'd0 : rColumn_Scan <= 2'b10;
2'd1 : rColumn_Scan <= 2'b01;
endcase
/******************************/
assign Column_Scan_Sig = rColumn_Scan;
/******************************/
endmodule
一周热门 更多>