没有合适的资源?快使用搜索试试~ 我知道了~
首页STM32 MCU上的LCD-TFT显示控制器(LTDC).pdf
STM32 MCU上的LCD-TFT显示控制器(LTDC).pdf
需积分: 50 33 下载量 192 浏览量
更新于2023-03-03
评论 1
收藏 2.68MB PDF 举报
本应用笔记介绍了STM32微控制器的LCD-TFT显示控制器,并演示了如何使用和配置LTDC外设。还重点阐述了为获得最佳图形性能所需要的一些硬件、软件和架构考虑因素。
资源详情
资源评论
资源推荐
2018年8月 DocID029237 Rev 1 [English Rev 2] 1/91
1
AN4861
应用笔记
STM32 MCU上的LCD-TFT显示控制器(LTDC)
前言
移动、工业和消费应用的发展使得对图形用户界面(GUI)的需求更强,并且所需硬件资源
也有所增加。这些应用需要更高质量的图形、更多的硬件和软件资源(比如图形基元或帧缓
冲区的内存)以及更高的处理性能。
为了应对这种日益增长的需求,通常会使用微处理器单元,而这导致了成本更高、设计更复
杂,而且上市时间也更长。为了应对这些要求,STM32 MCU提供了丰富的图形产品组合。
由于采用了嵌入式LCD-TFT显示控制器(LTDC),STM32 MCU可以直接驱动高分辨率显
示面板,无需任何CPU干预。另外,LTDC可以自主访问内部存储器或外部存储器来获取像素
数据。
本应用笔记介绍了
表
1中所列STM32微控制器的LCD-TFT显示控制器,并演示了如何使用和
配置LTDC外设。还重点阐述了为获得最佳图形性能所需要的一些硬件、软件和架构考虑因
素。
相关文档
意法半导体网站 www.st.com 提供以下文档:
• STM32F75xxx和STM32F74xxx基于32位MCU(RM0385)的高级ARM
®
• STM32F76xxx和STM32F77xxx基于32位MCU(RM0410)的高级ARM
®
• STM32F469xx和STM32F479xx基于32位MCU(RM0386)的高级ARM
®
• STM32F405/415、STM32F407/417、STM32F427/437和STM32F429/439基于32位MCU
(RM0090)的高级ARM
®
• STM32F429/439、STM32F469/479、STM32F7x6、STM32F7x7、STM32F7x8、
STM32F7x9数据表
表1. 适用产品
类型 产品线
微控制器
STM32F429/439、STM32F469/479、
STM32F7x6、STM32F7x7、STM32F7x8、STM32F7x9
www.st.com
目录 AN4861
2/91 DocID029237 Rev 1 [English Rev 2]
目录
1 显示器和图形概述 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1 基本图形概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 显示接口标准 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
1.3 STM32 MCU支持的显示接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2LTDC控制器和STM32 MCU图形产品组合概述 . . . . . . . . . . . . . . . . . . . . . 15
2.1 STM32 MCU上的LCD-TFT显示控制器 . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 LTDC可用性和STM32系列的图形产品组合 . . . . . . . . . . . . . . . . . . . . . . . 15
2.3 智能架构中的LTDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4 使用STM32 LTDC控制器的优势 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3 LCD-TFT(LTDC)显示控制器说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1 功能描述 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1.1 LTDC时钟域 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1.2 LTDC复位 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2 灵活的时序和硬件接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2.1 LCD-TFT引脚和信号接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2.2 对于不同的显示器尺寸,其时序完全可编程 . . . . . . . . . . . . . . . . . . . . . 22
3.3 两个可编程LTDC层 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.3.1 灵活的窗口位置和尺寸配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.2 可编程层:颜色帧缓冲器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4 中断 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.5 低功耗模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4 使用LTDC创建图形应用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.1 确定图形应用要求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2 检查显示器尺寸和色深与硬件配置的兼容性 . . . . . . . . . . . . . . . . . . . . . . . 31
4.2.1 帧缓冲存储器大小要求和位置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2.2 考虑存储器时检查显示兼容性带宽要求 . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2.3 检查显示面板接口与LTDC的兼容性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.3 STM32封装选择指南 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.4 LTDC与DMA2D和CPU同步 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.4.1 DMA2D 的用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
DocID029237 Rev 1 [English Rev 2] 3/91
AN4861 目录
4
4.4.2 LTDC和DMA2D/CPU同步 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.5 图形性能优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.5.1 内存分配 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.5.2 优化从外部存储器读取LTDC帧缓冲器的过程(SDRAM或SRAM) . . . 43
4.5.3 优化从SDRAM读取LTDC帧缓冲器的过程 . . . . . . . . . . . . . . . . . . . . . . . 47
4.5.4 在消隐周期中更新帧缓冲器内容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.6 关于Cortex
®
-M7(STM32F7系列)的特别建议 . . . . . . . . . . . . . . . . . . . . 48
4.6.1 如果不使用,就禁用FMC bank1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.6.2 配置存储器保护单元(MPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.7 LTDC外设配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.7.1 显示面板连接 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.7.2 LTDC时钟和时序配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.7.3 LTDC层配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.7.4 显示面板配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.8 存储图形基元 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.8.1 将图像转换为C文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.9 硬件注意事项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5 节省能耗 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6LTDC应用示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.1 实现示例和资源要求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.1.1 单片MCU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.1.2 带外部存储器的MCU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
6.2 示例:创建基本图形应用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
6.2.1 硬件说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
6.2.2 如何检查特定显示器尺寸是否匹配
硬件配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6.2.3 LTDC GPIO配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
6.2.4 LTDC外设配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
6.2.5 显示来自内部闪存的图像 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
6.2.6 FMC SDRAM配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
6.2.7 MPU和高速缓存配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
6.3 带LCD-TFT面板的参考板 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
7 所支持的显示面板 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
目录 AN4861
4/91 DocID029237 Rev 1 [English Rev 2]
8 常见问题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
9 结论 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10 版本历史 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
DocID029237 Rev 1 [English Rev 2] 5/91
AN4861 表格索引
5
表格索引
表1. 适用产品 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
表2. STM32 MCU支持的显示接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
表3. 嵌入了LTDC的STM32 MCU及其可用的图形产品组合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
表4. 使用STM32 MCU LTDC控制器的优势 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
表5. LTDC接口输出信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
表6. LTDC时序寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
表7. LTDC中断总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
表8. LTDC外设状态与STM32低功耗模式的关系 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
表9. 不同屏幕分辨率的帧缓冲器大小 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
表10. STM32F4x9,其HCLK @ 180 MHz并且SDRAM @ 90 MHz
最大支持像素时钟与LTDC配置和SDRAM总线宽度的关系 . . . . . . . . . . . . . . . . . . . . . . . . . 37
表11. STM32F7x6、STM32F7x7、STM32F7x8和STM32F7x9,其HCLK @ 200 MHz并且
SDRAM@ 100 MHz时,最大支持像素时钟与LTDC配置和SDRAM总线宽度的关系38
表12. 特定STM32硬件配置下所支持的显示分辨率示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
表13. 带LTDC外设的STM32封装与RGB接口可用性的关系 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
表14. 从ROCKTECH RK043FN48H数据表中提取LCD-TFT时序 . . . . . . . . . . . . . . . . . . . . . . . . 55
表
15. 编程LTDC时序寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
表16. 使用不同硬件配置下STM32的图形移植示例. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
表17. STM32参考板,嵌入了LTDC并具有板上LCD-TFT面板 . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
表18. 常见问题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
表19. 文档版本历史 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
表20. 中文文档版本历史 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
剩余90页未读,继续阅读
hzwahzw
- 粉丝: 0
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0