0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

数码管的显示原理及其实现方式

CHANBAEK 来源:数字FPGA设计与验证 作者:夕阳笑笑 2023-10-01 09:53 次阅读

在数字FPGA电路中,作为入门级别的外设除LED灯外,数码管算是使用频率最多、应用范围最广的一个核心集成外设了,因此学习数码管的使用非常有必要,下面一起来看看数码管的显示原理及其实现方式吧!

1. 数码管显示原理

数码管是电子设计中常用的外设设备之一,用来显示一些数据数值。常见的数码管有单个的以及多个共用一起的,那么首先由最简单的单个数码管的原理介绍,方便大家的理解。如下图a所示:

图片

图a单个数码管内部结构

这就是一个常见的单个数码管内部的结构造型,可以理解成7个长方形的LED小灯组成,由这些小灯的亮灭状况来组成数码管显示的不同数值,下面我以手绘图展示几个数字的情况,大家应该能更清楚直观的明白其工作原理,如下图b所示:

图片

图b显示数字024

这里是三个单独的数码管,分别显示数字0、2、4,所以数码管的原理可以简单的理解为点亮小灯的组合排列即可(具体内部电路的可以参考后面的附录,因为其不属于数字电路的内容,故放在附录中),明白了数码管的原理那么再来实现这部分的操作就很简单啦,下面就一起具体看看是如何实现的吧。

2. 数码管显示部分的程序实现

在日常生活中灯的亮灭是通过开关来进行控制,开可以理解为一个高电平的指令,关则相反,而在数字电路中,逻辑电平高低分别用1和0来进行表示,因此要实现点亮数码管的功能,也就可以通过0和1来进行控制a~g这七个小灯,比如让数码管显示1那么只需要b、c这两个小灯点亮就可以了,那么下面就来实现数码管显示部分的程序,使用的Verilog语言:

module    one_digit(
    input    [3:0]    data,
    output    [7:0]    seg
);

reg        [7:0]    seg;

always @(data) begin
    case(data)
        4'h0:seg = 8'b11000000;
        4'h1:seg = 8'b11111001;
        4'h2:seg = 8'b10100100;
        4'h3:seg = 8'b10110000;
        4'h5:seg = 8'b10010010;
        4'h4:seg = 8'b10011001;
        4'h6:seg = 8'b10000010;
        4'h7:seg = 8'b11111000;
        4'h8:seg = 8'b10000000;
        4'h9:seg = 8'b10010000;
        4'ha:seg = 8'b10001000;
        4'hb:seg = 8'b10000011;
        4'hc:seg = 8'b11000110;
        4'hd:seg = 8'b10100001;
        4'he:seg = 8'b10000110;
        4'hf:seg = 8'b10111111;
    endcase
end

endmodule

以上就是基于的是LUT查找表的原理所写的单个数码管显示的程序。

3. 数码管程序的验证

当写完一部分语法验证没有错误、编译能够成功的程序后,下面要做的就是核心的功能验证,那么对于上面的数码管程序如何进行验证呢?

对于FPGA设计的验证来说,常见的验证方式有两种:a.仿真验证b.下板验证,当身边没有合适硬件板卡的时候,仿真验证往往是不错的选择,这个时候借助一些EDA工具,可以方便的验证好设计的程序逻辑功能是否正确,Modelsim就是这样一款便于仿真验证的工具,当然进行仿真验证的时候也需要进行激励的输入(编写一部分代码),下面对这个数码管的程序使用仿真验证的方式看看效果吧,如下图c所示:

图片

图c数码管仿真结果

可以从仿真波形的高低判断出对应的数码管内部LED小灯的亮灭情况,由此排列组合推断出实际的数码管显示情况,以此作为仿真验证判断的依据,下面给出仿真验证的程序:

`timescale      1ns/1ns

 

module TB_one_dight;

 

reg         [3:0]data;

wire[7:0]seg         ;

 

one_digituut(

       data,

       seg

);    

 

initial begin

       data=     0;

       #100;

       repeat(16)begin

              data=     data+     1;

              #100;

       end

       $stop;

end

 

endmodule

至于实物验证的部分的话,建议结合相关的硬件板块配套例程来进行学习验证,这里就不做板卡推荐了,FPGA板卡以实物配套为文档教程为准。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1603

    文章

    21326

    浏览量

    593233
  • led
    led
    +关注

    关注

    237

    文章

    22450

    浏览量

    645891
  • Verilog
    +关注

    关注

    28

    文章

    1327

    浏览量

    109307
  • 数码管
    +关注

    关注

    31

    文章

    1827

    浏览量

    89950
  • 数字电路
    +关注

    关注

    192

    文章

    1397

    浏览量

    79752
收藏 人收藏

    评论

    相关推荐

    数码管显示原理及应用

    单片机学习----数码管显示原理及应用代码规划内容:一、数码管显示原理二、如何用万用表检测数码管的引脚排列三、
    发表于 11-17 08:32

    如何实现多位数码管显示

    按键累加计数,并显示数码管。实验电路:3 实现四位数码管的动态扫描显示;通过动态扫描的方式让四
    发表于 11-18 07:16

    数码管静态显示原理

    数码管显示数码管静态显示原理显示及其接口数码管动态
    发表于 11-22 08:38

    如何实现数码管动态显示

    实现功能:按下按键时,数码管动态显示‘ 键值-扫描值 ’按键松开时,数码管动态显示‘ 0-00 ’proteus连线图Clock Frequ
    发表于 01-07 06:22

    如何实现数码管显示

    蓝桥杯学习记录3数码管显示操作数码管无非就是操作了很多流水灯,代码比较简单。但是从原理上讲,数码管的连接对于初学者不好解释明白,这是头痛的一点。蓝桥杯用的
    发表于 01-12 07:27

    数码管的静态显示方式与动态显示方式有何不同

    单片机系统中的LED数码管显示程序有哪几种方式啊?数码管的静态显示方式与动态
    发表于 01-18 07:47

    数码管显示原理是什么呢

    3.1 数码管显示原理这便是数码管的图片,叫做四位数码管,当然也有双位,单位数码管,也还有不带小数点的以及“米”字型。无论
    发表于 02-22 06:45

    什么是数码管?静态数码管的驱动介绍

    (1位)、联排(2位、4位、8位)2、工作原理(1)亮灭原理(其实就是内部的照明LED)(2)显示数字(甚至文字)原理:利用内部的LED的亮和灭让外部的组成数字的笔画显示或者不显示,人
    发表于 02-24 06:21

    数码管静态显示和动态显示实现方法

    数码管静态显示和动态显示数码管共阳和共阴段选和位选数码管静态显示原理代码
    发表于 03-01 07:34

    如何实现多个数码管同时显示

    字一、基础分析一个陌生器件的功能,我们首先要看明白它的原理图。1.其实蓝桥杯中的数码管比我之前用的普中单片机的数码管显示简单多了,普中的单片机为了节省资源,一次只能点亮一个
    发表于 03-02 07:30

    分享三个在FPGA开发板上实现数码管动态显示的案例

    不同的图案,以获得更多样性的显示效果。其实现方法就是利用人眼的视觉暂留效应,轮流点亮数码管,并且在各位数码管点亮的期间给出对应的段码,只要进行这一过程的速度控制得当,人眼就来不及观察到
    发表于 07-25 15:18

    分享一个基本的数码管动态显示案例

    样性的显示效果。其实现方法就是利用人眼的视觉暂留效应,轮流点亮数码管,并且在各位数码管点亮的期间给出对应的段码,只要进行这一过程的速度控制得当,人眼就来不及观察到各个
    发表于 08-01 15:21

    LED数码管显示分类及其典型应用电路

    本文主要讲述了LED数码管显示分类及其特点、LED数码管典型应用电路。 一.LED数码管显示
    发表于 07-31 11:09 1w次阅读
    LED<b class='flag-5'>数码管</b><b class='flag-5'>显示</b>分类<b class='flag-5'>及其</b>典型应用电路

    数码管显示的多种方式

    1、 实现3*4按键数码管显示
    发表于 09-06 15:02 22次下载

    单片机中的数码管显示原理及其实现

    十引脚数码管,引脚为abcdefg、dp、c、gnd,七段数码管通过给某个引脚置高电平,即可实现该段的二极管点亮,从而显示0–9及A—F。数码管
    发表于 11-11 09:51 42次下载
    单片机中的<b class='flag-5'>数码管</b><b class='flag-5'>显示</b>原理<b class='flag-5'>及其实现</b>