数码管驱动设计

AI summary
数码管驱动设计涉及设计背景、数码管分类、工作原理、设计要求、架构及实现等方面。设计要求包括驱动ZX-1板卡上的6个数码管显示特定值,并使用ISSP工具生成数据。工作原理说明了如何通过位选和输入数据驱动多个数码管显示,强调了切换频率的重要性。测试结果展示了逻辑实现和状态机实现的效果。
Last edited time
Sep 24, 2024 01:40 PM
Last edited by
Tags
Digital Tube Driver
Design Principles
Testing and Implementation

一:设计背景

常用显示设备:LED、数码管显示、VGA/DVI/HDMI接口、LCD1602/12864液晶显示屏、TFT显示屏、LED屏…
显示设备目的就是用于显示数据/图像,由于显示设备不一样,导致显示内容有所差异。

二:数码管分类(共阳/共阴极数码管)

notion image
数码管中a,b,c,d,e,f,g,h这8段属于发光二极管。
共阳极数码管:低点平点亮相对应的段,高电平熄灭。
共阴极数码管:高点平点亮相对应的段,低电平熄灭。

三:ZX-1板卡原理图

notion image
ZX-1板卡有6个数码管,且都为共阳极数码管,占用11个管脚(节约I/O资源)。
11个管脚包含8个段选(SEG0~SEG7),3个位选(SEL0~SEL2)。

四:数码管工作原理

  1. 驱动1个数码管显示
    1. notion image
      首先选择该数码管(打开当前该数码管的开关),然后给其显示数据的译码即可。
      通用的译码数值范围16个:0/1/2/3/4/5/6/7/8/9和A/b/C/d/E/F。
  1. 驱动多个数码管显示(2个及以上)
    1. notion image
      目的:使其两个数码管显示12字符。
      人眼视觉暂留效果:>=20ms
      notion image
      • 假设数码管切换频率过快(50MHZ),会导致数码管显示不稳定(对应的段都会显示,且某一段特别亮,某一段特别暗)。
      • 假设数码管切换频率过慢(1HZ),会导致数码管显示不稳定(现象类似于流水灯)。
      • 一般数码管切换频率往往采用1KHZ(经验频率),其数码管显示比较稳定。
  1. 驱动数码管所需输入数据
      • 驱动1个数码管需要4位二进制数(0/1/2/3/4/5/6/7/8/9和A/b/C/d/E/F)。
      • 驱动2个数码管需要8位二进制数(0/1/2/3/4/5/6/7/8/9和A/b/C/d/E/F)。
      • 驱动6个数码管需要24位二进制数(0/1/2/3/4/5/6/7/8/9和A/b/C/d/E/F)。
  1. 24位输入数据对应6个数码管
    1. 注意:data_in[23:0] = 24’h123456;
      notion image
      数码管位选:SEL[2:0]
      输入24位数据:data_in[23:0]
      说明
      sel=0:最左边数码管
      data_in[23:20]=4’h1
      sel=0:高位
      sel=1
      data_in[19:16]=4’h2
      sel=2
      data_in[15:12]=4’h3
      sel=3
      data_in[11:8]=4’h4
      sel=4
      data_in[7:4]=4’h5
      sel=5:最右边数码管
      data_in[3:0]=4’h6
      sel=5:低位
  1. 数码管译码(共阳极)
    1. notion image
      总结:显示多个数码管时,首先位选需要采用1KHZ进行切换,当切换到某个数码管,将输入数据的某4位给到当前数码管,直到6个同时显示。对于数码管显示某些数据,由输入决定,显示的字符为通用的(0/1/2/3/4/5/6/7/8/9和A/b/C/d/E/F),所以只需译码即可。

五:设计要求

  1. 驱动ZX-1板卡上的6个数码管使其同时显示定值(24’h123456)。
  1. 用ISSP(板级调试工具)产生24位数据给到数码管显示。
  1. 当ISSP产生数据后将显示结果立刻更新在SignalTap II来观看。

六:设计架构

notion image
notion image

七:设计实现

数码管控制器实现
  1. 逻辑实现
    1. 具体完成代码实现。
  1. 状态机实现(3段式FSM)
    1. notion image

八:测试结果

  1. 逻辑实现
    1. notion image
  1. FSM实现
    1. notion image

九:下板测试

notion image
采用两个板级调试工具(ISSP:源和探针 SignalTap II:在线逻辑分析仪)
在ISSP Editor上更改待显示的数据,更改完成后,会立刻将显示数据更新在SignalTap II上。

十:练习

  1. 完成上课内容
  1. 完成下述数码显示功能
    Loading...