S3C44B0S3C24102440通信与LCD接口技术.ppt
配套教材:ARM嵌入式系统结构与编程,第2版邱铁 编著,清华大学出版社,2013.8E_mail:,ARM嵌入式系统结构与编程,第10章S3C44B0/S3C2410/S3C2440通信与LCD接口技术,本章基于嵌入式微控制器S3C44B0X和S3C2410/S3C2440,介绍了通用异步收发器(UART)、I2C总线的通信原理和S3C44B0X/S3C2410/S3C2440的用作图形界面接口的LCD控制器,每种功能部件都列出了相应的典型开发实例。,内容提要,101 S3C44B0/S3C2410/S3C2440 UART102 S3C44B0/S3C2410/S3C2440 I2C总线接口103 S3C44B0/S3C2410/S3C2440 LCD控制器,103 S3C44B0/S3C2410/S3C2440 LCD控制器,在嵌入式设备中,图形界面信息的显示离不开显示器,嵌入式产品由于体积和功耗的限制,大多采用LCD(Liquid Crystal Display)液晶显示器。,LCD工作原理示意图,1.LCD工作原理LCD显示器核心结构是由两块玻璃基板中间充斥着运动的液晶分子。信号电压直接控制薄膜晶体的开关状态,再利用晶体管控制液晶分子,液晶分子具有明显地光学各向异性,能够调制来自背光灯管发射的光线,实现图像的显示。,2.LCD的特点与分类LCD基本上分为无源阵列彩显STN-LCD(俗称伪彩显)和薄膜晶体管有源阵列彩显TFT-LCD(俗称真彩显)。,STN(Super Twisted Nematic)屏幕,又称为超扭曲向列型液晶显示屏幕。在传统单色液晶显示器上加入了彩色滤光片,并将单色显示矩阵中的每一像素分成三个像素,分别通过彩色滤光片显示红、绿、蓝三原色,以此达到显示彩色的作用,颜色以淡绿色和橘色为主。,TFT(Thin Film Transistor)即薄膜场效应晶体管显示屏,它的每个液晶像素点都是由集成在像素点后面的薄膜晶体管来控制,使每个像素都能保持一定电压,从而可以大大提高反应时间,一般TFT屏可视角度大,一般可达到130度左右,主要应用在高端显示产品。,1032 S3C44B0/S3C2410/S3C2440 LCD控制器模块,在S3C44B0和S3C2410/S3C2440内部集成了LCD控制器,其逻辑功能是将LCD的图像数据从主存的视频缓冲区域传送到外部LCD设备。,S3C44B0 LCD控制器:支持彩色、灰度、单色LCD面板;支持三种LCD显示模式:4位双扫描、4位单扫描、8位单扫描;支持单色、4级和16级灰度显示;支持256色的STN显示器面板;支持多虚拟显示屏(支持硬件横向、纵向滚屏);支持系统主存作为显存;专用的DMA传送支持,负责将存储在主存中的视频帧直接传送到LCD缓存中;支持多分辨率:640 x480,320 x240,160 x160的实际显示器和最大4096x1024,2048x2048,1024x4096等的虚拟显示器;支持低功耗模式(SL_IDLE模式)。,S3C2410/S3C2440 LCD控制器:支持STN-LCD显示器同S3C44B0TFT-LCD显示器:支持1、2、4、8位色的调色板TFT-LCD显示;支持16位、24位色的非调色板真彩显示,在24位色模式下最大支持16M显存;支持多分辨率:640 x480,320 x240,160 x160的实际显示器和它支持最大4MB虚拟显存,在16bit色模式下最大支持2048x1024等的虚拟显示器;,1 外部接口信号S3C44B0的LCD外部接口信号:VFRAME该信号是LCD控制器和LCD驱动器之间的帧同步信号,它指示一个新的帧的开始。VLINE该信号是LCD控制器和LCD驱动器之间的行同步信号。当VLINE信号到来的时候,LCD控制器认为整个行线的数据被LCD驱动传送。VCLK该引脚是LCD控制器和LCD驱动器之间的像素时钟,LCD控制器在VCLK的上升沿传送数据,LCD驱动器在其下降沿对数据进行采样。VM是送给LCD驱动器的交流信号。VM信号被LCD驱动用来选择行列电压的极性以打开或关闭像素。VD7:0是LCD像素数据端口。,S3C2410/S3C2440的LCD外部接口信号:VFRAME/VSNYC/VSTV帧同步信号(STN)/虚拟同步信号(TFT)/SEC TFT信号VLINE/HSYNC/CPV行同步脉冲信号(STN)/水平同步脉冲信号(TFT)/SEC TFT信号VCLK/LCD_HCLK像素时钟信号(STN/TFT)/SEC TFT信号VD23:0LCD像素数据信号(STN/TFT/SEC TFT)VM/VDEN/TPLCD驱动的交流偏置信号(STN)/数据使能信号(TFT)/SEC TFT信号LEND/STH行结束信号(TFT)/SEC TFT信号LCD_PWRENLCD电源控制使能信号LCDVF0SEC TFT信号OELCDVF1SEC TFT信号REVLCDVF2SEC TFT信号REVB,2 模块结构S3C44B0 LCD控制器逻辑框图,S3C2410/S3C2440 LCD 控制器逻辑框图,3.LCD控制器的操作(1)时钟产生器(TIMEGEN),LCD的分辨率和显示模式的配置由下面的公式表示:,(2)STN显示操作LCD控制器支持彩色、灰度、单色的显示方式。当需要使用灰度或彩色的显示模式时,需要通过基于时间的抖动算法和帧速率控制(RFC)方法模块,实现灰度或色彩的平滑过度。单色模式绕过了这两个模块。,S3C44B0和S3C2410/S3C2440支持在彩色或灰度模式下不同映射的查找表,这种选择给了用户很大的灵活性。查找表允许用户选择不同的色彩或灰度级。,灰度模式操作S3C44B0和S3C2410/S3C2440支持两种灰度模式:4级灰度和16级灰度,使用查找表中的两个bit来选择不同的模式。这两个bit使用的是在彩色模式下的蓝色的查找表。,彩色模式操作S3C44B0的LCD控制器支持256色彩色模式,S3C2410/S3C2440支持256色和4096色彩色模式。256色模式下,采用3位红色、3位绿色、2位蓝色。在彩色模式下使用分离的查找表。,抖动模式和帧速率控制在STN-LCD显示器(单色模式除外),数据必须经过抖动算法处理。抖动有两个函数:用于减少闪烁的基于时间的抖动算法和用来在STN面板上显示灰度和色阶的帧速率控制(FRC)算法。抖动 占空因子示例见教材ARM嵌入式系统结构与编程表10-18,单色4位双扫描,单色4位单扫描内存格式,灰度及彩色存储格式,256色彩色模式数据格式,4096色彩色模式数据格式,STN-LCD的时序要求见教材ARM嵌入式系统结构与编程第338页图10-25,(3)TFT显示操作TIMEGEN为LCD驱动产生控制信号,例如VSYNC、HSYNC、VCLK、VDEN和LEND信号。这些控制信号的产生高度依赖于在寄存器组中的LCDCON1/2/3/4/5寄存器的设置。,HOZVAL和LINEVAL的设置取决于LCD面板的尺寸,使用的公式如下:,VCLK信号的频率依赖于LCDCON1寄存器中的CLKVAL值的设定。,视频显示操作像素在LCD面板上的分布,24bpp显示方式数据构成,256色调色板使用方法S3C2410/S3C2440的TFT-LCD控制器支持256色调色板模式。用户可以从64K种颜色中挑选256种颜色。256色调色板包含一个256(深度)x 16bit的SPSRAM,调色板支持5:6:5和5:5:5:I两种格式。,5:6:5的显示格式,5:5:5:I的显示格式,调色板数据格式分配5:6:5格式,调色板数据格式分配5:6:5格式,4虚拟显示器(STN/TFT)S3C44B0和S3C2410/S3C2440支持硬件横向、纵向滚屏。如果使用滚屏,LCDSADD1/2寄存器中除了PAGEWIDTH和OFFSIZE的LCDBASEU和LCDBASEL需要被更改。存储图像的视频缓冲区在尺寸上需要大于LCD面板的尺寸。,虚拟屏幕滚屏,1033 S3C44B0/S3C2410/S3C2440 LCD控制器专用功能寄存器,1.LCD控制寄存器1,S3C44B0的LCDCON1,S3C2410/S3C2440的LCDCON1,LCD控制寄存器2(LCDCON2)、LCD控制寄存器3(LCDCON3)、LCD控制寄存器4(LCDCON4)、LCD控制寄存器5(LCDCON5)控制信息 详情见教材ARM嵌入式系统结构与编程表10-26、表10-27、表10-28、表10-29、表10-30,帧缓冲区起始地址寄存器1(LCDADDR1)、帧缓冲区起始地址寄存器2(LCDADDR2)、帧缓冲区起始地址寄存器3(LCDADDR3)详情见教材ARM嵌入式系统结构与编程表10-31、表10-32、表10-33,9.红色查找表寄存器,9.绿色查找表寄存器,10.蓝色查找表寄存器,抖动样式寄存器、抖动模式寄存器DITHMODE、LCD中断请求寄存器(LCDINTPND)、LCD中断源请求寄存器(LCDSRCPND)、LCD中断屏蔽寄存器(LCDINTMSK)、LPC3600控制寄存器(LPCSEL)详情见教材ARM嵌入式系统结构与编程表10-37、表10-38、表10-39、表10-40、表10-41、表10-42、表10-43,1034 S3C44B0/S3C2410/S3C2440 LCD控制器设计实例,1 LCD控制器接口设计,2.软件设计LCD软件主要包括以下功能:LCD初始化、画点、画直线、画圆、画椭圆等。程序的主要源代码详情见教材ARM嵌入式系统结构与编程第354页。,思考与练习题,采用FIFO的方式进行UART的发送和接收,应如何对UART进行初始化,发送和接收程序应如何编写?I2C总线有几条通信线,如何确定其地址格式?CAT24WC04是基于I2C总线的4K位的E2PROM芯片,请阅读CAT24WC04器件手册,分析其接口原理,并利用S3C44B0的I2C接口,扩展两片CAT24WC04。TFT和STN型的LCD各有哪些显示方式?,第10章S3C44B0/S3C2410/S3C2440通信与LCD接口技术,The End,