各种显示接口DBI、DPI、LTDC、DSI、FSMC

首先,MIPI(Mobile Industry Processor Interface)移动行业处理器接口联盟不仅开发了新标准,还将现有的显示借口进行了标准化。这其中包括MIPI-DBI、MIPI-DPI、MIPI-DSI、MIPI-CSI等:

1)MIPI-DBI是MIPI联盟发布的第一个显示标准,用来规定显示接口。MIPI-DBI中定义了三类接口:

  • A类:基于Motorola 6800总线
  • B类:基于Intel 8080总线
  • C类:基于SPI协议

2)MIPI-DPI通过TFT控制器对接口进行标准化。用来与没有帧缓冲器的显示器进行连接。像素数据必须实时流式传输到显示器。

3)MIPI_DSI封装了DBI或DPI信号,采用高带宽多通道差分链路,它使用标准的MIPI D-PHY作为物理链路。

STM32 MCU支持的显示接口类型如下:

  • 所有STM32 MCU均支持MIPI-DBI C类(SPI)接口
  • 带F(S)MC的所有STM32 MCU均支持MIPI-DBI A类和B类接口,即将LCD当存内存一样接在FSMC接口上
  • 带LTDC的STM32 MCU支持MIPI-DPI接口
  • 嵌入DSI主机的STM32 MCU支持MIPI-DSI接口
    大致来说,103等可以采用FSMC接口,429等可以采样LTDC RGB模式,469、769等可以使用DSI模式。几种模式的整体流程图如下:
    DBI流程图
    DPI和DSI
  1. DBI(Display Bus Interface)

DBI(Display Bus Interface), 显示总线接口, 也称MCU接口或者80/8080接口,DBI接口最大的特点就是LCM自带framebuffer, 存储Host端发过来的数据, 并由内部的控制IC不断重复的刷到LCD上, 也就是说其内部实现了自刷新, Host只要发送一次数据即可, 这帧数据会一直显示在屏幕上。由于不需要Host端自刷新,对Host处理器的要求很低, 没有时钟线,Host和LCM可以是简单的GPIO相连

DBI传输可以选择并口和串口传输,两者差别就是数据线数量不同,时序是相同的。

  • 并行传输一般包括以下信号线:
    CSX: 片选信号,图中低电平有效; D/CX:数据/命令信号;WRX: 写使能, 上升沿锁存;RDX:读使能, 上升沿锁存;D[17:0]: 数据线
    M0~3四根引脚有0000、0001、0010、0011四种配置,分别对应8位、16位、9位、18位并行数据线
    TE(tearing effect)引脚用于同步,可以指示LCM一帧数据是否刷完(也可配置LCM每刷多少帧产生一个信号告知Host)
    以上信号线中,除数据线外,其它信号线表示的写或读的时序,具体的写或读的内容是通过数据信号线传输的,可以是命令或像素点值,命令又分为带参数和不带参数两种,带参数则均为两个字节。上面的M0-3配置了数据线的条数,每种配置根据信号线时序的不同,又分为四种:写数据或命令的参数、写命令、读数据、读命令的参数。具体的时序图如下

在这里插入图片描述
以RGB565为例:先发送写内存命令0x2c, 接着开始写帧数据,即连续发送所有像素点的数据
在这里插入图片描述
并行传输接口可以用FSMC接口来实现,并且FSMC接口支持6800和8080两种模式
FSMC接口6800模式FSMC接口8080模式

  • 串行传输则有三条线和四条线两种:
    1)3线制时信号分时钟DCX、片选CSX、数据SDA,特别注意,3线制每传输一个字节需要9bit, 多出一个bit来表示该字节是命令还是数据,用GPIO实现相对较好,因为SPI的每字节只能是8位,即使指定spi->bits_per_word = 9,SPI也会将其自动转为读取两个字节。
    2)4线制每byte就是8bit,通过这根多出的引脚告知LCM这个byte是命令还是数据。
  1. DPI(Display Pixel Interface)
    显示像素接口, 也称RGB接口, 之所以叫像素接口, 是因为数据采用并口在一个时钟周期就传输一个像素的数据, 所以时钟一般设置像素时钟而不是bit时钟。与DBI不同的是, LCD端没有framebuffer, 转移到Host端, 所以为了维持画面能够持续显示在屏幕上, Host要持续发送数据过去, 并且为保证数据的同步, 引入VSYNC/HSYNC等功能(更准确说是继承了以前的叫法),信号包括
    Vsync:帧同步信号  vbp: 帧同步信号的后肩,单位为1行的时间。vfp: 帧同步信号的前肩,单位为1行的时间。
    Hsync:行同步信号, hbp:行同步信号的后肩,单位为1像素的时间。hfp:行同步信号的前肩,单位为1像素的时间。
    Dotclk:点时钟或称像素时钟  DE: 数据有效信号(屏蔽掉前后肩)
    DPI模式示意图

但是这里特别注意的是,vbp/vfp/hbp/hfp这四个参数只是为了兼容以前的CRT显示器而保留的,而物理管脚上,这四个信号无论是CRT还是LED也不需要单独的管角,它是用DE信号和Vsync、Hsync组合来实现这个四个参数的。

同时,DPI接口的数据管脚只传输数据,命令由单独的SPI接口来传输,所以典型的DPI控制器管脚包括:CS、RST、SCL、SDA、Vsync、Hsync、DOTCLK、DB(0-15),其中时钟是像素时钟,即一个象素点的16位或24位数据是在一个像素时钟内并型传输过去的
在这里插入图片描述
在这里插入图片描述
LCD显示需要显示控制器,显示控制器是LCD越来越大,功能越来越多的发展结果。 LCD控制器同LCD驱动器是有着本质区别的。简单来说LCD控制器在嵌入式系统中的功能如同显卡在计算机中所起到的作用。LCD控制器负责把显存(可能是内存中的指定域)中的LCD图形数据传输到LCD驱动器(LCD driver)上,并产生必须的LCD控制信号,从而控制和完成图形的显示,翻转,叠加,缩放等一系列复杂的图形显示功能。LCD驱动器则只负责把CPU发送的图像数据在LCD显示出来,不会对图像做任何的处理。LCD控制器可以兼容各种各样的CPU接口以及各种各样的LCD模块的接口,硬件完成复杂图像显示功能(缩放,翻转,叠加,动态等等)

LCD控制器的功能就是生成LCD像素时钟,将GRAM中的数据搬运到LCD屏幕上去显示。在一般的小型LCD模块一般都集成了一个LCD控制器,如常用的ili9320/ili9325等型号,这些LCD模块同时还集成了几百KB大小的RAM,用于显示;一般地MCU先通过8080接口或SPI向控制器发送命令,配置LCD参数,然后向集成的RAM中写入数据就可以显示,是低成本项目的首选方案。

STM32F429自带的LTDC也是LCD控制器,与ili9320相比,支持的分辨率更高,功能更多,但是LTDC只负责产生LCD需要的时序,并没有集成RAM。那么在使用LTDC的时候,首先要配置LCD的时序,然后要设置GRAM的地址(这里GRAM的地址就是外扩的SDRAM的地址),最后开启LTDC。配置好LTDC之后,硬件会自动将GRAM中的内容搬运到LCD屏幕上,只要改变GRAM中的数据就可以改变显示内容。

LTDC支持2个图层和1个背景图层,一般情况下用一个图层显示就可以了;这2个图层可以单独设置显示区域和GRAM地址,并且同时开启时,硬件自动将2个图层的显示内容进行混合,混合顺序是:图层2 -> 图层1 -> 背景色,图层2位于最顶层

这里有一个理解起来比较困难的地方,就是LTDC和DMA2D之间的关系,因为从二者的逻辑图功能上看,似乎完全一样。先看逻辑图
LTDC功能框图

  • 37
    点赞
  • 148
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: MIPI规范是移动行业处理器接口联盟(MIPI Alliance)制定的一系列规范,用于定义移动设备中各种接口和协议的技术规范。MIPI规范资源整合涉及到DBI(Display Bus Interface)、DPI(Display Pixel Interface)、DSI(Display Serial Interface)、CSI(Camera Serial Interface)和DCS(Display Command Set)等相关技术。 DBI是一种显示总线接口,用于连接处理器和显示设备,实现数据传输和图像显示DPI是一种像素接口,用于把显示像素数据从处理器传输到显示设备,控制像素颜色和显示分辨率。DSI是一种串行显示接口,它将显示数据通过高速差分传输线传输到显示屏幕,实现高清图像显示。CSI是一种相机串行接口,用于连接处理器和相机模块,传输图像数据以供图像处理和显示。DCS是一种显示命令集,用于控制显示器的参数和功能,如亮度、对比度、色彩等。 MIPI规范资源整合的目的是为了提高移动设备的显示和摄像功能。通过整合不同的接口和协议,可以实现更高的数据传输速度、更高的图像质量和更多的功能选项。这样可以提升用户体验,使移动设备显示更加清晰、色彩更真实,同时也提升了相机模块的性能,使拍照更清晰、更具细节。MIPI规范资源整合的应用范围广泛,包括智能手机、平板电脑、数字相机、车载导航系统等移动设备和嵌入式系统。 总而言之,MIPI规范资源整合是一种技术手段,通过整合各种接口和协议,提升移动设备的显示和摄像功能,为用户带来更好的使用体验。 ### 回答2: MIPI(移动工业处理器接口)规范是一组用于移动设备的通信接口标准,旨在实现高效的数据传输和资源整合。其中的几个主要规范包括DBI(Display Bus Interface)、DPI(Display Port Interface)、DSI(Display Serial Interface)、CSI(Camera Serial Interface)和DCS(Display Command Set)。 DBI(Display Bus Interface)是一种用于显示屏的总线接口标准,它定义了数据传输的时序和信号规范。通过使用DBI显示屏可以方便快速地接收到来自处理器端的图像数据,并将图像显示在屏幕上。 DPI(Display Port Interface)是一种用于显示端口的高速串行接口标准,它能够高效地传输图像和音频数据。通过使用DPI,移动设备可以实现更高的分辨率和刷新率,同时减少数据传输的复杂性和占用空间。 DSI(Display Serial Interface)是一种用于移动设备的串行显示接口标准,它定义了图像和命令数据传输的协议和物理层规范。通过使用DSI,移动设备可以将图像数据和操作命令传输到显示屏,以控制图像的显示和刷新。 CSI(Camera Serial Interface)是一种用于摄像头连接的串行接口标准,它定义了数据传输和控制信号的规范。通过使用CSI,摄像头可以方便地将图像和视频数据传输到处理器端,供后续处理和编码。 DCS(Display Command Set)是一种用于控制显示屏的命令和协议标准,它定义了一系列可用于配置和控制屏幕参数的命令。通过使用DCS,处理器可以发送命令到显示屏,以控制亮度、对比度、色彩和其他显示参数。 综上所述,MIPI规范提供了一系列资源整合标准,包括DBIDPIDSI、CSI和DCS,它们分别用于显示屏、显示端口、移动设备的显示接口、摄像头连接和屏幕控制。这些规范的使用可以有效地提升移动设备的图像质量、数据传输速率和用户体验。 ### 回答3: MIPI规范(Mobile Industry Processor Interface)是一种用于移动设备的接口标准,它包含了一系列资源整合的技术,其中包括DBI(Display Bus Interface)、DPI(Display Pixel Interface)、DSI(Display Serial Interface)、CSI(Camera Serial Interface)和DCS(Display Command Set)。 DBI是一种显示总线接口,用于传输显示数据和控制信号。它可以连接显示器和图形处理器,并支持高速数据传输和低功耗。 DPI是一种用于驱动液晶显示屏的接口,用于将图像数据转换为显示器可接受的形式。它定义了图像数据的传输格式和时序信号,使得显示器能够正确显示图像。 DSI是一种串行接口,用于连接显示模块和显示控制器。它可以传输图像数据、时钟信号和控制命令,能够实现高质量的图像显示。 CSI是一种用于连接摄像头和主机处理器的接口。它支持高速数据传输和控制信号传输,使得摄像头能够传输图像数据给主机进行处理和存储。 DCS是显示命令集,用于控制液晶显示器的各种功能和参数。它定义了一系列命令和寄存器,用于调整显示屏的亮度、对比度、颜色等参数。 总而言之,MIPI规范的资源整合包含了DBIDPIDSI、CSI和DCS等技术,这些技术能够实现高质量的图像显示和摄像功能,提升移动设备的用户体验。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值