差别

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

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
屏幕保护系统设计 [2018/11/01 11:18]
anran [实验原理]
屏幕保护系统设计 [2021/08/18 09:04] (当前版本)
gongyusu
行 1: 行 1:
-=====屏幕保护系统设计===== +## 屏幕保护系统设计 
------ +### 实验任务
-====实验任务====+
  
   * 任务:基于 STEP-MAX10M08核心板 和 STEP BaseBoard V3.0底板 完成屏幕保护系统设计并观察调试结果   * 任务:基于 STEP-MAX10M08核心板 和 STEP BaseBoard V3.0底板 完成屏幕保护系统设计并观察调试结果
行 7: 行 6:
   * 解析:将小脚丫Logo取模得到128x128像素的图片数据,通过FPGA编程驱动VGA液晶显示器,实现现经典屏幕保护的界面效果。   * 解析:将小脚丫Logo取模得到128x128像素的图片数据,通过FPGA编程驱动VGA液晶显示器,实现现经典屏幕保护的界面效果。
  
-====实验目的====+### 实验目的
  
 在图片显示系统实验中我们学习过图片取模的方法,根据取模数据创建ram模块,本实验我们要学习VGA接口液晶显示器的驱动原理及方法,结合图片ram数据,最终实现屏幕保护系统的总体设计。VGA接口显示有固定的模式,本实验800x600@60Hz模式需要40MHz的时钟主频,可以按照简易电压表实验中的方法例化PLL的IP核实现。 在图片显示系统实验中我们学习过图片取模的方法,根据取模数据创建ram模块,本实验我们要学习VGA接口液晶显示器的驱动原理及方法,结合图片ram数据,最终实现屏幕保护系统的总体设计。VGA接口显示有固定的模式,本实验800x600@60Hz模式需要40MHz的时钟主频,可以按照简易电压表实验中的方法例化PLL的IP核实现。
行 14: 行 13:
   * 完成屏幕保护系统设计实现   * 完成屏幕保护系统设计实现
  
-====设计框图====+### 设计框图
  
 根据前面的实验解析我们可以得知,该设计总体可以拆分成如下功能模块实现, 根据前面的实验解析我们可以得知,该设计总体可以拆分成如下功能模块实现,
行 23: 行 22:
 {{:​13-Top-Down层次设计.png?​500|Top-Down层次设计}} {{:​13-模块结构设计.png?​500|模块结构设计}} {{:​13-Top-Down层次设计.png?​500|Top-Down层次设计}} {{:​13-模块结构设计.png?​500|模块结构设计}}
  
-====实验原理====+### 实验原理
  
-===VGA接口介绍===+#### VGA接口介绍
  
 VGA(Video Graphics Array)是IBM在1987年随PS/​2机一起推出的一种视频传输标准,具有分辨率高、显示速率快、颜色丰富等优点,在彩色显示器领域得到了广泛的应用,VGA接口定义如下: VGA(Video Graphics Array)是IBM在1987年随PS/​2机一起推出的一种视频传输标准,具有分辨率高、显示速率快、颜色丰富等优点,在彩色显示器领域得到了广泛的应用,VGA接口定义如下:
行 43: 行 42:
 对于VGA的接口模拟电压(R\G\B),为0~0.714V范围峰峰值,0代表无色,0.714代表满色,一些非标准的显示器使用的是1Vpp的满色电平。三基色信号源端和终端匹配电阻均为75欧姆,如下图所示: 对于VGA的接口模拟电压(R\G\B),为0~0.714V范围峰峰值,0代表无色,0.714代表满色,一些非标准的显示器使用的是1Vpp的满色电平。三基色信号源端和终端匹配电阻均为75欧姆,如下图所示:
  
-{{:​13-VGA三基色匹配电阻示意.png?​600|VGA三基色匹配电阻示意}}+{{:​13-VGA三基色匹配电阻示意.png?​500|VGA三基色匹配电阻示意}}
  
 FPGA为数字逻辑器件,想要得到0~0.714V范围电压主要有两种方法,DAC转换方式和电阻分压方式,我们的扩展板卡上就是采用的电阻分压的方式,因VGA显示器端有75欧的下拉电阻,为了得到0.714V的电压我们给RGB信号线上串入270欧姆的电阻,3.3V*75/​(270+75)=0.717V。如下图所示: FPGA为数字逻辑器件,想要得到0~0.714V范围电压主要有两种方法,DAC转换方式和电阻分压方式,我们的扩展板卡上就是采用的电阻分压的方式,因VGA显示器端有75欧的下拉电阻,为了得到0.714V的电压我们给RGB信号线上串入270欧姆的电阻,3.3V*75/​(270+75)=0.717V。如下图所示:
行 65: 行 64:
 {{:​13-VGA显示模式.png?​600|VGA显示模式}} {{:​13-VGA显示模式.png?​600|VGA显示模式}}
  
-===VGA模块硬件连接===+#### VGA模块硬件连接
  
 以下是STEP BaseBoard V3.0底板上的VGA模块电路,其电路图如下: 以下是STEP BaseBoard V3.0底板上的VGA模块电路,其电路图如下:
行 73: 行 72:
 底板上的VGA显示电路与1.8寸串行彩色液晶屏电路复用部分FPGA管脚,两者不能同时使用,当使用VGA接口模块电路时,FPGA直接驱动VGA接口完成VGA液晶显示器控制即可。VGA硬件采用电阻分压方式连接,每个基色智能显示无色或满色,所以显示效果最多有2^3=8种颜色显示(包含黑色)。 底板上的VGA显示电路与1.8寸串行彩色液晶屏电路复用部分FPGA管脚,两者不能同时使用,当使用VGA接口模块电路时,FPGA直接驱动VGA接口完成VGA液晶显示器控制即可。VGA硬件采用电阻分压方式连接,每个基色智能显示无色或满色,所以显示效果最多有2^3=8种颜色显示(包含黑色)。
  
-===VGA模块驱动设计===+#### VGA模块驱动设计
  
 端口列表中三基色控制管脚定义为vga[2:​0],高位到低位依次接红绿蓝,那么8中颜色对应的数据如下: 端口列表中三基色控制管脚定义为vga[2:​0],高位到低位依次接红绿蓝,那么8中颜色对应的数据如下:
行 86: 行 85:
 本实验使用800x600@60Hz的VGA显示模式,首先将该VGA显示模式下的参数定义,在40MHz的主频下,参数如下: 本实验使用800x600@60Hz的VGA显示模式,首先将该VGA显示模式下的参数定义,在40MHz的主频下,参数如下:
  
-{{:​13-VGA模块电路.png?​600|VGA模块电路}} +<WRAP group> 
- +<WRAP half column> 
-|||||||||||||||||||+|水平方向 ​| 
-|||||||||||||||||||||+|同步脉冲 Thp |后廊 Thb |有效线数 Thd |前廊 Thf | 
 +|128 |88 |800 |40 | 
 +</​WRAP>​ 
 +|垂直方向 ​| 
 +|同步脉冲 Thp |后廊 Thb |有效线数 Thd |前廊 Thf 
 +||23 |600 || 
 +<WRAP half column>​ 
 +</​WRAP>​ 
 +</​WRAP>​
  
 将参数定义,更改VGA显示模式时,只需要更改下面参数,参数定义如下: 将参数定义,更改VGA显示模式时,只需要更改下面参数,参数定义如下:
行 197: 行 204:
 </​code>​ </​code>​
  
-===系统总体实现===+#### 系统总体实现
  
 例化pll IP核得到40MHz时钟信号,提供给VGA驱动模块做时钟信号,例化配置方法在简易电压表实验中有讲解,这里不再重复。 例化pll IP核得到40MHz时钟信号,提供给VGA驱动模块做时钟信号,例化配置方法在简易电压表实验中有讲解,这里不再重复。
行 207: 行 214:
 {{:​13-RTL设计框图.png?​800|RTL设计框图}} {{:​13-RTL设计框图.png?​800|RTL设计框图}}
  
-====实验步骤====+### 实验步骤
   - 双击打开Quartus Prime工具软件;   - 双击打开Quartus Prime工具软件;
   - 新建工程:File → New Project Wizard(工程命名,工程目录选择,设备型号选择,EDA工具选择);   - 新建工程:File → New Project Wizard(工程命名,工程目录选择,设备型号选择,EDA工具选择);
行 218: 行 225:
  
  
-====实验现象====+### 实验现象 
 + 
 +将程序加载到FPGA中,使用VGA线连接液晶显示器和FPGA底板,观察显示现象。小脚丫Logo图片在显示屏上移动,到达边沿后反弹,每次反弹都会颜色改变,共有6中颜色。 
 +