文章目录
-
- 概要
- 一、先说结论:一条被大量工程实践验证的路线
- 二、为什么显示系统不能"一步到位"?
- [三、VGA ------ 理解"显示是什么"](#三、VGA —— 理解“显示是什么”)
概要
在 FPGA 学习过程中,显示系统几乎是所有人都会遇到、却又最容易"学乱"的一块内容。很多人会有这样的经历:VGA 看着不难,照着例程能跑;RGB TFT 一上手就花屏、抖动、黑屏;HDMI 更是"什么都没显示,不知道错在哪"。问题并不在于你代码能力不够,而在于学习顺序和认知层级错了。本文不是教你写代码,而是从工程角度给出一条清晰、可落地的 FPGA 显示系统学习路线,解释为什么: VGA 必须先学, RGB TFT 是关键分水岭, 而 HDMI 反而不适合过早碰。
一、先说结论:一条被大量工程实践验证的路线
如果你的目标是真正具备 FPGA 显示系统能力,而不是"跑过几个 Demo",那一条合理的学习路径是:
bash
VGA → 参数化 VGA → RGB TFT →(再考虑 HDMI / LVDS)
这条路线不是历史惯性,而是由工程责任逐步转移决定的。
二、为什么显示系统不能"一步到位"?
很多初学者一上来就想做 RGB TFT,甚至 HDMI,理由通常是:
- VGA 太老了,没工程价值
- TFT / HDMI 才是现在用的
- 不想学"过时技术"
但在 FPGA 里,显示系统的难点从来不在"新不新",而在于:
谁在负责生成显示时序?
显示系统的本质是一个严格的时间系统,不是一个"数据接口"。
如果你还没搞清楚"显示时序是谁生成的、怎么生成的",越先进的接口,只会让你死得越快。
三、VGA ------ 理解"显示是什么"
VGA 在 FPGA 学习中的真实作用
在工程上,VGA 的最大价值不是"还能不能用",而是:
它把显示系统的核心问题,简化到"两个计数器"。
在 VGA 中,你第一次直观地接触到:
- 像素不是同时显示的,而是扫描出来的
- 一帧 = 多行
- 一行 = 多个像素
- 显示 ≠ 一次性输出数据,而是持续输出时序
你会真正理解:
- HSYNC / VSYNC 在"时间轴"上的意义
- 显示区和消隐区为什么存在
- RGB 数据为什么必须和时序对齐
这些东西,不理解 VGA,就永远只能背参数表。
RGB TFT 和 VGA 的本质差别
在 VGA 中:
- 显示器负责采样
- 负责校准
- 负责纠错
- 负责缓冲
你给它"差不多对"的信号,它还能想办法显示。
而在 RGB TFT 中:
- 没有显示器
- 没有控制芯片
- 没有纠错
- 没有缓冲
你面对的是一块完全被动的液晶面板。