QVGA TFT-LCD 直接驱动使用 STM32F10xx FSMC 外设 前言 : A# o! B& m5 R5 P2 x! H' K 本应用笔记讲解的低成本解决方案可使用任何未配备片上 LCD 控制器的 STM32F10xxx 微控制器,直接驱动 QVGA TFT-LCD。强大的 STM32F10xxx 器件具有嵌入式的 FSMC(灵活的静态存储控制器),它可与片上 DMA 控制器共同使用,实现对 TFT-LCD 的直接驱动。此低成本解决方案为数字相框、独立信息显示器、静态广告板等应用的理想选择。 本应用笔记说明了怎样将 STM32F10xx 用作 LCD 控制器,驱动一个与 FSMC 接口的 QVGA3.5" TFT 面板。此解决方案实现的优化意味着仅需 1% CPU 负荷即可显示静态图片。 2 w0 u% _- ]7 E( j% z 固件的演示已在 320x240 像素分辨率的 CT05350DW0000T QVGA 3.5" LCD 模块上开发并测试。 1 STM32 QVGA TFT-LCD 直接驱动 * G) C. J) L# h b STM32 微控制器具有一个嵌入式的灵活静态存储控制器 (FSMC),可连接 NAND、 NOR、SRAM、PSRAM 等外部存储器接口。该微控制器还有大量通用 I/O 端口引脚,可与 FSMC 共同工作,成为低端显示器的低成本 TFT-LCD 控制器: ; J6 m- D0 ^! y- X ● FSMC外设的16位数据线可方便地与TFT-LCD面板的565 RGB格式线接口(在565 RGB格式中, 5 位用于红色, 6 位用于绿色, 5 位用于蓝色)。 ● 外部存储器可用作图片源,也可作为 TFT-LCD 刷新的帧缓冲。 ● 通用 I/O 引脚可为 LCD 提供同步逻辑。 4 U P+ H0 }9 X' p- d" s 1.1 STM32 QVGA TFT-LCD 直接驱动原理 无控制器 TFT-LCD 面板具有多种数据线配置,例如 16 位、 18 位、 24 位 RGB 线。具有 16位数据接口的 TFT-LCD 为每个像素提供了 565 格式。 + ^0 w1 e2 V' F: j$ B+ n1 W % e% g. B& E7 u4 F4 N9 K7 G TFT-LCD面板显示器以行列结构管理。垂直扫描控制行数据输出,水平扫描控制列数据输出。 - w* b# v% X+ x; k2 L 除数据线配置不同外,其它数据显示管理信号对所有 TFT-LCD 面板通用: ● 帧同步信号 (VSYNC)管理垂直扫描,作为图片 (帧)更新选通。 * n( E9 i+ O- q# ] ● 行同步信号 (HSYNC)管理水平线扫描,作为行显示选通。 ● 同步信号与像素数据时钟 (DCLK)执行数据输出到 TFT RGB 数据线。 ● DCLK仅作为TFT的数据有效信号。仅在DCLK信号沿时TFT才将数据作为输入。DCLK有效沿 (上升 / 下降)在 TFT 数据手册中讲述。 8 ?3 [7 Q. U$ S1 J 水平扫描构建一条线显示,垂直扫描构建整个帧。每秒连续执行多帧图片的垂直和水平扫描。 TFT 还需要一个 TFT 使能信号,它仅作为芯片使能信号和 TFT 复位信号。 6 F! f/ h' E/ K( C% X9 q/ k ; t$ f2 U+ d7 I j' N1 Z+ }2 A 必须根据显示时间的限制同步 TFT 信号,以确保显示具有连续视觉效应。 4 i5 Z; j9 P8 ]6 s+ o$ A 图 1 显示了水平和垂直扫描信号。1 _- C+ p% @% g6 d, E7 X; u5 T FSMC 总线数据宽度为 16 位,因此,若 TFT-LCD 面板有 24 位 RGB 线,则 LCD RGB 数据线的 MSB 能以 565 格式接口。 * s' n0 b; L. t% Q) |图片必须在 TFT-LCD 上连续显示,这可以由 STM32 微控制器方便管理。 7 Q7 s, @: V: e& b: Q图 2 显示了 TFT 同步信号波形。 / F) c1 Z; t# n# _6 i% {. q |
收藏 |
支持~~~~~~~~~ |
STM32固件库分享,超全系列整理
小马哥STM32F103开源小四轴RoboFly全部资料大放送
【MCU实战经验】+STM32F107的USB使用
【银杏科技ARM+FPGA双核心应用】STM32H7系列10——ADC
基于STM32F103两轮平衡小车设计(开源)
STM32F107VCT6官方原理图和PCB
【银杏科技ARM+FPGA双核心应用】STM32H7系列57——MDK_FLM
【福利】用STM32库的朋友有福了:STM32F10x_StdPeriph_Lib_V3.5.0chm...
【STM32图书分享之九】—《STM32F 32位ARM微控制器应用设计与实践》
基于STM32F10xx存储器和系统架构经验分享