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

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

3天内不再提示

BJ-EPM240学习板之数码管显示实验

工程师 来源:未知 作者:姚远香 2019-03-06 15:05 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一个带小数点的数码管的所有8个发光二极管的正极或负极有一个公共端,通常必须接GND(共阴极数码管)或者接VCC(共阳极数码管),而另一个非公共端的8个引脚就留给用户的I/O直接控制了。

所以,你做实验之前要明白自己的开发板的数码管是共阳极的还是共阴极的,由于板子是师兄留给我的,我就不知道我的板子是共阳极的还是供阴极的,所以显示数字出现乱码时,我就花了很长时间确定是共阳极的还是共阴极的,乱码是这个原因还是引脚约束出问题了等等,很烦恼,当然,最后成功的显示数字之后,心里还是很舒服的。

我的Spartan-6 FPGA开发板中的数码管是共阳极的,因此段选是低电平有效,也就是低电平时,每一段对应的发光二极管点亮。

如下图是数码管的示意图:

BJ-EPM240学习板之数码管显示实验

如果是共阴极的,那么译码表为:

BJ-EPM240学习板之数码管显示实验

每个数字或字符的编码是怎么得到的呢?

如下表:

BJ-EPM240学习板之数码管显示实验

上表举了0、1这两个数字的编码方式,应该很明白了吧,从dot开始到a,依次编码,亮为1,灭为0,如此规律,可以找到各个数字或字符对应的16进制编码,该16进制编码最高位赋值给dot,然后是g、f依次到a,这样的话,就应该到时候分配引脚的时候,dot引脚对应的编码位数是最高位,a引脚对应的是编码位数的最低位。

不明白这一点,弄错了,就会出现乱码。

上面说的是共阴极的情况,那么共阳极的情况呢?对应的编码是多少呢?

可知根据规律自己推,这里就直接给出了:

BJ-EPM240学习板之数码管显示实验

下面说说这个实验的要求,由于只是初步了解数码管的段选片选,所以就不要求那么复杂了,相对简单一些:

看看你的开发板上有几个数码管,让它们同时显示数字从0 到 F。

下面给出我的FPGA设计的Verilog HDL硬件描述语言:

这个代码是特权同学的,我改动了下,适应我的FPGA开发板,(数码管是共阳极的,片选是低电平有效,8个数码管。)

`timescale 1ns / 1ps

//////////////////////////////////////////////////////////////////////////////////

// Company:

// Engineer:

//

// Create Date: 14:03:17 08/17/2018

// Design Name:

// Module Name: leg_seg7

// Project Name:

// Target Devices:

// Tool versions:

// Description:

//

// Dependencies:

//

// Revision:

// Revision 0.01 - File Created

// Additional Comments:

//

//////////////////////////////////////////////////////////////////////////////////

module led_seg7(

clk,rst_n,

sm_cs1_n,sm_db

);

input clk; // 50MHz

input rst_n; // 复位信号,低有效

output[7:0] sm_cs1_n; //数码管片选信号,低有效

output[7:0] sm_db; //8段数码管(包括小数点)

reg[24:0] cnt; //计数器,最大可以计数到2的25次方*20ns=640ms

always @ (posedge clk or negedge rst_n)

if(!rst_n) cnt 《= 25‘d0;

else cnt 《= cnt+1’b1; //循环计数

reg[3:0] num; //显示数值

always @ (posedge clk or negedge rst_n)

if(!rst_n) num 《= 4‘d0;

else if(cnt == 25’h1ffffff) num 《= num+1‘b1; //每640ms增一

//-------------------------------------------------------------------------------

/* 共阳级 :带小数点

;0, 1, 2, 3, 4, 5, 6, 7,

db C0, F9, A4, B0, 99, 92, 82, F8

;8, 9, a, b, c, d, e, f , 灭

db 80, 90, 88, 83, C6, A1, 86, 8E, ff*/

parameter seg0 = 7’hC0,

seg1 = 7‘hF9,

seg2 = 7’hA4,

seg3 = 7‘hB0,

seg4 = 7’h99,

seg5 = 7‘h92,

seg6 = 7’h82,

seg7 = 7‘hF8,

seg8 = 7’h80,

seg9 = 7‘h90,

sega = 7’h88,

segb = 7‘h83,

segc = 7’hC6,

segd = 7‘hA1,

sege = 7’h86,

segf = 7‘h8E;

reg[7:0] sm_dbr; //8段数码管(包括小数点)

always @ (num)

case (num) //NUM值显示在数码管上

4’h0: sm_dbr 《= seg0;

4‘h1: sm_dbr 《= seg1;

4’h2: sm_dbr 《= seg2;

4‘h3: sm_dbr 《= seg3;

4’h4: sm_dbr 《= seg4;

4‘h5: sm_dbr 《= seg5;

4’h6: sm_dbr 《= seg6;

4‘h7: sm_dbr 《= seg7;

4’h8: sm_dbr 《= seg8;

4‘h9: sm_dbr 《= seg9;

4’ha: sm_dbr 《= sega;

4‘hb: sm_dbr 《= segb;

4’hc: sm_dbr 《= segc;

4‘hd: sm_dbr 《= segd;

4’he: sm_dbr 《= sege;

4‘hf: sm_dbr 《= segf;

default: ;

endcase

assign sm_db = sm_dbr;

assign sm_cs1_n = 8’b0000_0000; //数码管常开

endmodule

对上述代码需要解释的是片选信号有8个,低电平有效,我把8个数码区的片选全部赋值为0了,这样8个数码管就全部有效,同步显示0到F.(片选的意思是选择哪一个数码管有效)

这是我的数码管的电路图:

BJ-EPM240学习板之数码管显示实验

更多关于BJ-EPM240学习板之数码管显示实验请看视频。

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

    关注

    1663

    文章

    22491

    浏览量

    638935
  • 数码管
    +关注

    关注

    32

    文章

    1894

    浏览量

    94407
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    数码管显示IC抗干扰LED驱动芯片VK1624

    产品品牌:永嘉微电/VINKA 产品型号:VK1624 封装形式:SOP24/DIP24 VK1624是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁存器、LED 驱动等电路
    发表于 03-11 17:43

    【RA-Eco-RA2E1-V1.0开发试用】串行数码管模块显示驱动

    为了便于输出显示,就为开发配备了以MAX7219为控制芯片的数码管显示模块,它有两种工作模式,一种是采用编码的工作模式,另一种则是采用非编码的工作模式。 为了驱动该模块,所使用的是接
    发表于 01-26 11:54

    数码管 选型手册2025年最新版

    数码管具有高亮度、多种颜色、宽视角、简单驱动、长寿命、抗震抗冲击、节能环保和成本低等特点。适用于电子设备、工业控制和家用电器等领域的数字显示,提供清晰、均匀的显示效果,易于集成和控制。
    发表于 12-30 11:34 0次下载

    【EASY EAI Nano-TB(RV1126B)开发试用】+片温检测与显示

    开发提供了CPU片内温度的测试功能,其检测操作如图1所示。其中,“37070”表示其温度为37.070度。 图1 片温检测 为直观的观察片温,可通过串行数码管来进行显示,其器件连接如图2所示。 图
    发表于 12-25 11:13

    【EASY EAI Nano-TB(RV1126B)开发试用】+串行数码管显示驱动

    在开发上,为用户预留了3个GPIO引脚以便测试和使用,见图1所示。 图1预留的GPIO资源 这3个GPIO引脚的位置见图2所示,用它可驱动串行数码管显示模块来实现显示功能。 图2 引
    发表于 12-24 19:03

    第6章 中断与数码管动态显示(6.1 6.2)

    中断是单片机系统重点中的重点,因为有了中断,单片机就具备了快速协调多模块工作的能力,可以完成复杂的任务。本章将首先带领大家学习一些必要的C语言基础知识,然后讲解数码管动态显示的原理,并最终借助于中断
    的头像 发表于 12-08 17:03 795次阅读

    第5章 定时器与数码管基础(5.3)

    5.3 数码管学习 LED小灯是一种简单的LED,只能通过亮和灭来表达简单的信息。这节课学习一种能表达更复杂信息的器件——LED数码管。 5.3.1
    的头像 发表于 12-02 15:57 1155次阅读
    第5章 定时器与<b class='flag-5'>数码管</b>基础(5.3)

    【瑞萨RA6E2】ADC数据采集与数码管显示

    模拟信号处理和显示控制方面的强大能力。 一、硬件设计与连接 1.1 硬件组件 主控 :瑞萨RA6E2评估 显示模块 :8位(启用4位)74HC595共阳极
    发表于 11-27 00:52

    原厂 FZH114C  一款LED(发光二极数码管、点阵屏)驱动控制专用芯片

    :驱动6位数码管,每位数码管7段(a-g)。8段×5位:驱动5位数码管,每位数码管8段(含小数点DP)。亮度调节:段驱动电流8级可调(建议≥2/8以确保亮度)。位占空比16级可调,灵活
    发表于 11-19 14:43

    FZH114  LED(发光二极数码管、点阵屏)驱动控制专用芯片,集成数字通讯电路、 解码电路、数据锁存器、震荡器

    显示、LED点阵屏、机顶盒显示等。 工业控制设备:需要多位数码管或LED点阵显示的场景。 注意事项 段驱动电流:建议设置为2/8及以上,以确保LED正常点亮。 共阴设计:仅适用于共阴
    发表于 11-19 11:13

    级联动态扫描显示数码管问题

    GD32F103C8T6 硬件SPI连接移位寄存器74HC595级联,动态扫描显示五位数码管 是否需要电平转换芯片TXB0104 数码管选择共阴极和共阳极区别是什么 若使用TXB0104,TXB0104的OE脚在代码书写时是否需
    发表于 10-07 20:36

    抗噪数显驱动数码管显示IC芯片VK1616

    产品品牌:永嘉微电/VINKA 产品型号:VK1616 封装形式:SOP16 产品年份:新年份 概述:VK1616是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁存器、LED
    发表于 08-18 17:27

    【应用】工业现场的“智能显示管家”:亿佰特EID051-1xx系列 Modbus数码管解析

    数码管。亿佰特新推出的EID051-1xx系列Modbus数码管,以多种核心优势,成为工业现场的一大助力。一.什么是Modbus数码管?Modbus数码管是一种通过R
    的头像 发表于 07-17 19:34 789次阅读
    【应用】工业现场的“智能<b class='flag-5'>显示</b>管家”:亿佰特EID051-1xx系列 Modbus<b class='flag-5'>数码管</b>解析

    COD监测革新!Air780EPM一站式替代STM32+4G模组的物联网方案 ~

    需氧量)监控是评估水体有机污染程度的核心手段,涉及多种技术、设备及数据处理方法。   以往行业常规开发方案是STM32+4G模组组合,本次实验项目采用Air780EPM开发新方案——4G模组直接做主控,省却MCU费用,开发更为简单便捷。 一、主要功能要点: RS485通讯
    的头像 发表于 05-21 16:51 670次阅读
    COD监测革新!Air780<b class='flag-5'>EPM</b>一站式替代STM32+4G模组的物联网方案 ~

    大公开!用Air780EPM重构水质COD监测,替代STM32+4G模组的技术路径

    方法。 以往行业常规开发方案是STM32+4G模组组合,本次实验项目采用Air780EPM开发新方案——4G模组直接做主控,省却MCU费用,开发更为简单便捷。 一、主要功能要点: RS485通讯四位数码管
    的头像 发表于 05-16 15:34 742次阅读
    大公开!用Air780<b class='flag-5'>EPM</b>重构水质COD监测,替代STM32+4G模组的技术路径