本文作者:Miler Shao 有人看到STM32F4和STM32F7系列中某些器件的片上资源有个MIPI DSI,问这是个什么东西。其实它就是个视频接口。这里就顺便聊聊STM32芯片可能支持的视频接口。
先说说MIPI,MIPI是Mobile IndustryProcessor Interface(移动行?业处理器接口)的缩写,是MIPI联盟发起的为移动应用处理器制定的开放协议与标准。
随着各种机电产品都朝着移动的方向发展,业内不断涌现出了许多接口标准。但多种不同的接口标准不仅导致了设计上的混乱,也不利于设备接口的互联互通。为了解决这些问题,2003年7月TI、ST、ARM、Nokia四家公司共同发起组建了MIPI联盟并制定了一套用于移动设备和消费类电子产品的接口标准,使这些设备的接口既能增加带宽、提高性能,同时又能降低成本、复杂度、功耗以及EMI。 MIPI主要针对下列系统定义了全套接口协议及标准。图像子系统(摄像头和显示器);存储子系统;无线子系统;电源管理子系统;低带宽子系统(音频、键盘、鼠标、蓝牙)。 DSI是Display SerialInterface (显示设备串行接口)的缩写。MIPI DSI 就是MIPI标准中的一个显示接口标准,它定义了一个位于处理器和显示模组之间的高速串行接口的规格与协议。DSI接口具有功耗低、设备EMI弱、接口管脚少、兼容性强、成本低等优势。 目前STM32家族中STM32F4、STM32F7系列中就有带DSI接口的芯片,比方STM32F469和STM32F7X9芯片。 
以STM32F469芯片为例,它可能用到的显示接口有三类: 1、DSI视频串行接口; 2、TFT LCD 数字RGB接口,即DPI接口; 3、通过FMC 实现的并行显示接口,即DBI 接口;  DSI(DisplaySerial Interface)
DSI接口符合MIPI规定的串行显示器接口协议,主机与显示器之间用差分信号线连接。 一对clock信号和1~4对data信号; 一般情况下data0可以配置成双向传输; 一个主机端可以允许同时与多个从属端进行通信; DBI(DisplayBus Interface) DBI接口也就是通常所说的MCU或MPU接口,比方80制式接口(摩托罗拉6800接口,英特尔8080接口)。 MCU接口通过并行接口传送数据和命令,通过给LCM模组自带的GRAM更新数据实现屏幕的刷新。因为DBI接口的液晶模组需要自带GRAM从而提高了生产成本,所以DBI接口的液晶屏尺寸一般都不大。 DPI(DisplayPixel Interface) DPI接口,即通常所说的RGB接口,使用行场同步、时钟、信号线来传送数据,通过SPI或I2C等串口线完成命令控制。 DPI接口是直接对液晶的各像素点进行操作,利用(H,V)两个行场信号对各像素点进行颜色填充。速度快,可用于动画显示,目前手机液晶屏所用的接口就是这一类。它对时序控制要求很高,因此一般低端的MCU芯片很难支持。 相比DBI接口的液晶屏,DPI接口的LCM不需自带GRAM ,直接写屏,速度快,常用于显示视频或动画用。当然,市面上也有很多LCD模组同时兼容DBI和DPI两种接口,即MCU接口和RGB接口。
整体上讲,整个STM32家族中100脚以上的芯片多数都带FSMC或FMC控制器,支持DBI接口。还有部分芯片除了支持DBI接口外,还支持DPI接口,这类芯片带TFT LCD控制器,比如STM32F429,STM32F439。再就是比如上面提到的STM32F469和STM32F7X9这些芯片就具有同时支持DBI、DPI、DSI三类显示接口的能力。具体细节描述可以参考各STM32系列的基本介绍和芯片数据手册。 |