首页 > 编程知识 正文

【连载】 FPGA Verilog HDL 系列实例--------8-3 BCD七段显示译码器

时间:2023-05-05 21:27:05 阅读:122083 作者:2673

【连载】FPGA Verilog HDL系列实例

Verilog HDL的8-3 BCD分段显示解码器

一、原理

7段数码管利用不同的发光bmdls方式显示不同的数字。 为了使数码管能够显示数字的代表性数量,必须用编解码器翻译数字,用驱动程序点亮配对用的字段。 结构图如下图1.1所示。 例如,要显示数值5,必须点亮a、f、g、c、d各段。  

表1.2 3-8解码器真值表

二、实现

在设计文件中输入Verilog代码

1 `时间比例1 ns/1 PS

2

3模块BCD7seg (y,a );

4

5 input [3:0] A;

6 wire [3:0] A;

7

8 output [6:0] Y;

9 wire [6:0] Y;

10 assign Y=~Y_r;

11 reg [6:0] Y_r;

12

13Always@(a )。

14 begin

15 Y_r=7'b1111111;

16情况(a )

17 4'b0000: Y_r=7'b0111111; //0

18 4'b0001: Y_r=7'b0000110; //1

19 4'b0010: Y_r=7'b1011011; //2

20 4'b0011: Y_r=7'b1001111; //3

21 4'b0100: Y_r=7'b1100110; //4

22 4'b0101: Y_r=7'b1101101; //5

23 4'b0110: Y_r=7'b1111101; //6

4(b0111:y_r=7) b0000111; //7

25 4'b1000: Y_r=7'b1111111; //8

26 4'b1001: Y_r=7'b1101111; //9

27 4'b1010: Y_r=7'b1110111; //A

28 4'b1011: Y_r=7'b1111100; //b

29 4'b1100: Y_r=7'b0111001; //c

30 4'b1101: Y_r=7'b1011110; //d

14(b11103360y_r=7) b1111001; //E

24(b11113360y_r=7) b1110001; //F

33 default: Y_r=7'b0000000;

34 endcase

35结束

36

37结束模块

转载于:https://www.cn blogs.com/kongtiao/archive/2011/08/25/2151127.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。