1. LCD基础与选型:从原理到实战

大家好,我是你们的嵌入式实战讲师。今天咱们聊聊LCD的基础与选型。说实话,这块内容看着理论性强,但选错了屏,后面调试能让你怀疑人生。我当年刚入行时,就吃过这个亏——选了个冷门接口的屏,结果驱动写了三周还没点亮。嗯,咱们今天就把这事彻底讲透。

1.1 LCD工作原理:像素是怎么亮起来的?

LCD,全称Liquid Crystal Display,液晶显示器。它的核心原理其实不复杂:液晶分子在电场作用下会扭转,从而控制背光透过率。说白了,就是每个像素像个小百叶窗,电压控制它开多大,光就能透多少。

具体来说,一个TFT-LCD像素由三个子像素组成:红、绿、蓝。每个子像素背后有个薄膜晶体管(TFT)控制电压。我习惯把TFT理解成「每个像素的专属开关」——它决定了这个像素亮不亮、多亮。

关键点:LCD本身不发光,它需要背光。背光常亮,液晶分子控制透光率。所以LCD显示黑色时,其实是把光「挡住」了,做不到纯黑。

1.2 TFT-LCD vs OLED:选哪个?

这个问题我经常被问到。咱们直接上对比表:

特性 TFT-LCD OLED
发光方式 背光+液晶控制 自发光(每个像素独立发光)
黑色表现 发灰(背光漏光) 纯黑(不发光)
对比度 1000:1 左右 100000:1 以上
功耗 背光常亮,功耗稳定 黑色省电,白色费电
寿命 5-10年(背光衰减) 3-5年(蓝光衰减快)
成本
适用场景 工业、仪表、低成本产品 手机、高端消费电子

我个人习惯:做工业产品、仪器仪表,首选TFT-LCD。为啥?稳定、寿命长、阳光下可读性好。做消费电子、追求显示效果,选OLED。但要注意——OLED有烧屏风险,我有个项目就是OLED长时间显示固定界面,半年后留下了残影。

避坑指南:我曾经在-20℃环境下测试OLED,发现响应速度明显变慢,画面有拖影。而TFT-LCD在宽温范围内表现稳定得多。如果你做户外或车载产品,务必考虑工作温度范围。

1.3 分辨率与接口选择:SPI、8080、MIPI

分辨率这块,咱们直接说常见的:

  • 128×64:小尺寸单色屏,SPI接口,适合显示简单文字
  • 320×240(QVGA):经典尺寸,ILI9341/ST7789常用,SPI或8080接口
  • 480×320(HVGA):中端屏,8080接口为主
  • 800×480(WVGA):大屏,需要MIPI或RGB接口

接口选择是个大学问。我给大家总结一下:

接口类型 引脚数 速度 适用场景
SPI 4-6根 慢(~40MHz) 小屏、低分辨率、引脚紧张
8080并行 8-16根数据线+控制线 中(~100MHz等效) 320×240主流屏、STM32F4/F7
MIPI DSI 2-4对差分线 快(~1Gbps) 高分辨率、大屏、需要高速刷新

你想想看,STM32做GUI项目,最常用的是啥?8080并行接口。为什么?因为SPI刷320×240的屏,全屏刷新要几十毫秒,动画效果卡顿。而8080接口配合FSMC,刷屏速度能到10ms以内。我有个项目用SPI刷屏,用户反馈「点一下等半秒」,换成8080后流畅多了。

小技巧:如果引脚不够用,可以考虑SPI+DMA方式。虽然SPI本身慢,但DMA可以解放CPU,让刷屏和主程序并行。我曾在STM32G0上用SPI+DMA刷128×128的屏,效果还不错。

1.4 常用LCD驱动IC:ILI9341与ST7789

这两个IC是咱们做嵌入式开发最常碰到的。来,直接看对比:

特性 ILI9341 ST7789
分辨率 320×240 240×240 / 320×320
接口 SPI / 8080 SPI / 8080
颜色深度 16位/18位 16位/18位
内部RAM 172800字节 172800字节
常见尺寸 2.8寸 / 3.2寸 1.3寸 / 1.54寸 / 2.0寸
初始化代码 较长(约200行) 较短(约100行)

我个人经验:ILI9341资料多、生态好,网上随便一搜就是例程。ST7789则更小巧,适合做手表、手环这类小尺寸产品。但要注意——ST7789的初始化序列各家屏厂改得五花八门,我遇到过同一型号不同批次初始化代码不一样的情况。

核心建议:选驱动IC时,先看你的屏尺寸和分辨率。2.8寸以上用ILI9341,1.3-2.0寸用ST7789。接口方面,如果MCU引脚够用,优先选8080并行接口。如果做低功耗产品,SPI接口更省电。

知识体系总览

下面这张图是我自己画的,把本章的核心逻辑串起来了:

LCD基础与选型知识体系 LCD选型决策 工作原理:液晶扭转 → 控制透光率 TFT-LCD vs OLED:工业选LCD,消费选OLED 接口选择:SPI(小屏/省引脚)→ 8080(主流/速度快)→ MIPI(大屏/高速) 驱动IC:ILI9341(2.8寸+) vs ST7789(小尺寸) 选型口诀:看尺寸、定接口、选IC

这张图把咱们今天讲的内容串起来了。从工作原理出发,到TFT与OLED的对比,再到接口和驱动IC的选择,最后落到一个选型口诀上。你照着这个思路走,基本不会选错屏。

最后说一句:选型这事,没有绝对的对错。我见过用SPI刷320×240屏做得很流畅的,也见过用MIPI接口结果驱动搞不定的。关键是你得清楚自己的需求——分辨率、刷新率、引脚数、成本,这四个维度权衡好了,选型就稳了。


公众号:蓝海资料掘金营,微信deep3321