专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
FPGA
用Verilog语言怎么写一个60进制的计数器然后显示在数码管上
2019-07-16 00:29
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
FPGA
7247
19
1305
小弟刚学
FPGA
用的是EP4CE6 现在想写一个60进制的计数器 然后在数码管上显示出来 用verilog写 但想了好几天没想出来 去大侠指导下 或给个程序看看 小弟感激不尽。。。。。拜托了
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
孟凡良
1楼-- · 2019-07-16 19:58
精彩回答 2 元偷偷看……
加载中...
孟凡良
2楼-- · 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
加载中...
孟凡良
3楼-- · 2019-07-17 00:05
行扫描模块
module row_scan_module
(
CLK, RSTn,
Ten_SMG_Data, One_SMG_Data,
Row_Scan_Sig
);
input CLK;
input RSTn;
input [7:0]Ten_SMG_Data;
input [7:0]One_SMG_Data;
output [7:0]Row_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 [7:0]rData;
always @ ( posedge CLK or negedge RSTn )
if( !RSTn )
rData <= 8'd0;
else if( Count1 == T10MS )
case( t )
2'd0 : rData <= Ten_SMG_Data;
2'd1 : rData <= One_SMG_Data;
endcase
/***********************************/
assign Row_Scan_Sig = rData;
/***********************************/
endmodule
加载中...
孟凡良
4楼-- · 2019-07-17 01:59
完了 大家多多支持
加载中...
青春流年
5楼-- · 2019-07-17 06:40
楼主你真是太伟大了,你真应该送佛送到西,顺便解释一下
加载中...
青春流年
6楼-- · 2019-07-17 12:33
精彩回答 2 元偷偷看……
加载中...
上一页
1
2
3
4
下一页
一周热门
更多
>
相关问题
如何用FPGA驱动LCD屏?
5 个回答
请教一下各位专家如何用FPGA做eDP接口?
6 个回答
FPGA CH7301c DVI(显示器数字接口)没有数字输出
7 个回答
100颗FPGA的板子,开开眼界
6 个回答
求教自制最小系统版
10 个回答
基于FPGA的X射线安检设备控制器
2 个回答
CycolneIVGX核心板,可扩展PCIE,光纤接口,大家来鉴赏一下
6 个回答
关于VHDL或Verllog程序稳定性的问题
11 个回答
相关文章
嵌入式领域,FPGA的串口通信接口设计,VHDL编程,altera平台
0个评论
Xilinx的FPGA开发工具——ISE开发流程
0个评论
基于FPGA的详细设计流程
0个评论
干货分享,FPGA硬件系统的设计技巧
0个评论
一种通过FPGA对AD9558时钟管理芯片进行配置的方法
0个评论
×
关闭
采纳回答
向帮助了您的网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
FPGA
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
关闭
您已邀请
15
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
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
module row_scan_module
(
CLK, RSTn,
Ten_SMG_Data, One_SMG_Data,
Row_Scan_Sig
);
input CLK;
input RSTn;
input [7:0]Ten_SMG_Data;
input [7:0]One_SMG_Data;
output [7:0]Row_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 [7:0]rData;
always @ ( posedge CLK or negedge RSTn )
if( !RSTn )
rData <= 8'd0;
else if( Count1 == T10MS )
case( t )
2'd0 : rData <= Ten_SMG_Data;
2'd1 : rData <= One_SMG_Data;
endcase
/***********************************/
assign Row_Scan_Sig = rData;
/***********************************/
endmodule
一周热门 更多>