差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
7-seg_disp_verilog [2021/10/08 21:42]
gongyu [3. Verilog代码]
7-seg_disp_verilog [2022/03/30 11:13] (当前版本)
gongyu
行 1: 行 1:
-## 数码管显示+## 2个7段数码管显示
   - 了解数码管显示的工作原理   - 了解数码管显示的工作原理
   - 加强对组合逻辑中的译码器的理解   - 加强对组合逻辑中的译码器的理解
行 5: 行 5:
  
 ### 1. 知识点 ### 1. 知识点
 +{{ :​7segled.gif |}}
 数码管是工程设计中使用很广的一种显示输出器件。一个7段数码管(如果包括右下的小点可以认为是8段)分别由a、b、c、d、e、f、g位段和表示小数点的dp位段组成。实际是由8个LED灯组成的,控制每个LED的点亮或熄灭实现数字显示。通常数码管分为共阳极数码管和共阴极数码管,结构如下图所示: 数码管是工程设计中使用很广的一种显示输出器件。一个7段数码管(如果包括右下的小点可以认为是8段)分别由a、b、c、d、e、f、g位段和表示小数点的dp位段组成。实际是由8个LED灯组成的,控制每个LED的点亮或熄灭实现数字显示。通常数码管分为共阳极数码管和共阴极数码管,结构如下图所示:
  
行 22: 行 23:
 这其实是一个4-16译码器 这其实是一个4-16译码器
  
-### 2. 原理图+### 2. CircuitJS中的电路仿真 
 +{{ :​7seg-js.mp4 |}} <WRAP centeralign>​ 在CircuitJS中仿真的效果 </​WRAP>​ 
 + 
 + 
 +### 3. 原理图
 在本实验中我们使用了核心板上的4个开关SW和4个按键KEY来分别控制2个数码管的显示,通过开关和按键的组合得到不同的显示数值。 在本实验中我们使用了核心板上的4个开关SW和4个按键KEY来分别控制2个数码管的显示,通过开关和按键的组合得到不同的显示数值。
  
行 31: 行 36:
 {{drawio>​7_seg_x2_block.png}} {{drawio>​7_seg_x2_block.png}}
  
-### 3. Verilog代码+### 4. Verilog代码
 如果我们想数码管能显示16进制可以全译码,如果只想显示数字,可以只利用其中10个译码,下面看看如果用Verilog来实现。 如果我们想数码管能显示16进制可以全译码,如果只想显示数字,可以只利用其中10个译码,下面看看如果用Verilog来实现。
  
行 89: 行 94:
  
  
-### 4. 管脚分配+### 5. 管脚分配
 利用小脚丫上的4路按键(key)和4路开关(sw),作为输入信号分别控制2个数码管的显示输出。在Web IDE中的管脚分配见如下图: 利用小脚丫上的4路按键(key)和4路开关(sw),作为输入信号分别控制2个数码管的显示输出。在Web IDE中的管脚分配见如下图:
 {{ :​7_seg_pinout.png |}} <WRAP centeralign>​在Web IDE中2个数码管的控制管脚分配 </​WRAP>​ {{ :​7_seg_pinout.png |}} <WRAP centeralign>​在Web IDE中2个数码管的控制管脚分配 </​WRAP>​
行 95: 行 100:
  
  
-### 5. 功能验证 +### 6. 功能验证 
- +将生成的JED文件发送到小脚丫FPGA的STEPFPGA盘中,即可完成其编程编程后效果下:
-### 6. 扩展使用 +
-小脚丫FPGA核心板对外扩展连接只有36根IO,采用了132BGA封装的芯片,有足够的管脚用于核心板上器件的使用,因此核心板上的2个7段数码管采用了FPGA的管脚直接连接的独立显示模式。但大多数应用场景需要用较少的IO管脚也能够驱动多个数码管,比如4个、6个乃至10个,如何才能实现?那就需要扫描显示的模式,即所有数码管共用8根数据信号线,各自再有1根选通信号线,采用分时的方式循环选通各位数码管,比如驱动4个数码管仅需要8+4 = 12根信号线进行显示。利用人眼的“视觉暂留效应”,以使数码管显示看起来是同时显示。这种扫描显示模式实现起来相比较复杂但是节约信号线使用。 +
-另外我们还可以使用专用的数码管驱动器件来实现,比74HC595串行变并行的芯片、南京钦恒公司推出的[[http://​www.wch.cn/​products/​CH450.html|数码管显示驱动芯片CH450]]等。+
  
  
 +### 7. 扩展使用
 +小脚丫FPGA核心板对外的扩展连接只需要36根IO,但采用了132BGA封装的芯片,在核心板上有足够的管脚用于核心板上几个器件(LED、数码管、开关、按键)的使用,因此核心板上的2个7段数码管采用了FPGA的管脚直接连接的独立显示模式。
  
 +但大多数应用场景需要用较少的IO管脚也能够驱动多个数码管,比如4个、6个乃至10个,如何才能实现?那就需要扫描显示的模式,即所有数码管共用8根数据信号线,各自再有1根选通信号线,采用分时的方式循环选通各位数码管,比如驱动4个数码管仅需要8+4 = 12根信号线进行显示。利用人眼的“视觉暂留效应”,可以使数码管显示看起来是同时显示。这种扫描显示模式实现起来相对比较复杂,但是节约信号线的使用。这种显示方式会在后面掌握了时序逻辑的基本概念以后再进行实现。
  
 +在实际的产品中,我们还可以使用专用的数码管驱动器件来实现,比如74HC595串行变并行的芯片、南京沁恒公司推出的[[http://​www.wch.cn/​products/​CH450.html|数码管显示驱动芯片CH450]]等。