qq_42234781 2019-05-05 19:32 采纳率: 0%
浏览 1657

verilog数码管静态显示计数器

最近刚上手数字电路实验,很多地方都不懂,实验课要求做出数码管静态显示计数器。自己写了一段代码也没报错,但是上basys3板子就行不通。

总体思路如下:

1: 计数模块

module cnt(
input clk1,
output reg[3:0] cnt
    );
    reg [27:0] times;
    initial times = 28'b0;

    always@(posedge clk1)
    begin
    if(times == 5000000)
    begin
    times = 28'b0;
    cnt = cnt + 4'b1;
    end
    else
    times = times + 28'b1;
    end

endmodule

#####2: 数码管显示模块

module seg(
input clk2,
input [3:0] cnt,
output[6:0] seg
 );

reg [6:0] r_seg;
assign seg = r_seg;


always @(*)
begin
 case(cnt)
 4'b0000: r_seg = 7'b1111110;
 4'b0001: r_seg = 7'b0000110;
 4'b0010: r_seg = 7'b1101101; 
 4'b0011: r_seg = 7'b1111001;
 4'b0100: r_seg = 7'b0110011;
 4'b0101: r_seg = 7'b1011011;
 4'b0110: r_seg = 7'b1011111;
 4'b0111: r_seg = 7'b1110000;
 4'b1000: r_seg = 7'b1111111;
 4'b1001: r_seg = 7'b1111011;
 4'b1010: r_seg = 7'b1110111;
 4'b1011: r_seg = 7'b0011111;
 4'b1100: r_seg = 7'b1001110;
 4'b1101: r_seg = 7'b0111101;
 4'b1110: r_seg = 7'b1001111;
 4'b1111: r_seg = 7'b1000111;
 default: r_seg = 7'b1111111;
  endcase
 end
endmodule

3:主调用模块

module top(
input clk_in1,
output [6:0] seg_display

    );
wire r_cnt;
wire clk1_cnt;
wire clk2_seg;
  clk_wiz_0 instance_name
   (
    // Clock out ports
    .clk_out1(clk1_cnt),     // output clk_out1
    .clk_out2(clk2_seg),     // output clk_out2
    .clk_in1(clk_in1)
    );      // input clk_in1
   cnt instance_cnt(
   .cnt(r_cnt),
   .clk1(clk1_cnt)
   );

   seg instance_seg(
   .seg(seg_display),
   .cnt(r_cnt),
   .clk2(clk2_seg)
   );

endmodule

现在主要由以下问题:

  1. 我上板之后发现有跳动,但一直都是 E(且七个段颜色不一)

  2. 如果要加使能信号,是4个数码管中只有一个 在跳动,那我应该把它放在主文件中当作输入吗?还是在seg这个module中呢?

如果能被解答就太感谢了 !因为被学校强制要求上这个课我也很无奈,自己啥也不会 ,还在学习中。。
PS 标签实在是在不到verilog,好尴尬。。。随便贴了一个,见谅。。

  • 写回答

1条回答 默认 最新

  • Yo4ni 2019-05-06 01:58
    关注

    你有做 I/O Pin Planning 嗎? 應該是要把你的seg信號接到某一個數碼管,

    還有你命名方式有點難看 (其中一個 cnt既是module name 又是 output reg),

    建議是先找網路上的code練習,這個範例很好找,一步步跟著做吧!

    參考連結 : https://www.xilinx.com/support/documentation/sw_manuals/xilinx11/pp_p_process_io_pin_planning_pre_syn.htm

    评论

报告相同问题?

悬赏问题

  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致