16.1存储控制器相关特殊功能寄存器配置ROM、SRAM接在BANK0~BANK5:只需设置BWSCON和BANKCONx(x为0~5);SDRAM接在BANK6或BANK7:除需设置BWSCON和BANKCONx(x为6、7)外,还要设置REFRESH、BANKSIZE、MRSRB6、MRSRB7。S3C2410处理器对SDRAM的访问步骤:处理器发出的片选信号nSCS0有效,选中SDRAM芯片;SDRAM中有4个L-Bank,需要2根地址信号线选中其中一个;被选中的芯片进行统一的行列(存储单元)寻址找到存储单元后,被选中的芯片就要进行统一的数据传输了。回顾16.2教学内容LCD及其工作原理简介S3C2410LCD控制器结构与功能TFT液晶屏的操作S3C2410LCD控制器相关特殊功能寄存器的含义与配置TFTLCD与S3C2410的接口电路及应用程序编写16.3教学要求了解LCD的工作原理理解S3C2410LCD控制器控制信号的含义掌握TFT液晶屏的操作方法(时序参数、帧频率、帧缓冲区地址、显示窗口地址)理解S3C2410LCD控制器相关特殊功能寄存器的含义掌握利用S3C2410LCD控制器驱动TFTLCD程序编写的步骤16.4液晶屏(LCD)及其工作原理简介液晶屏(LCD:LiquidCrystalDisplay)即人们常说的液晶显示器液晶显示屏按显示原理分为STN和TFT两种:STN(SuperTwistedNematic,超扭曲向列)液晶屏单色液晶屏及灰度液晶屏都是STN液晶屏TFT(ThinFilmTransistor,薄膜晶体管)彩色液晶屏现在大多数笔记本电脑都使用TFT显示屏,也常用于主流台式显示器16.5液晶屏(LCD)及其工作原理简介STN-LCD与TN-LCD的显示原理相同,只是它将液晶与入射光线扭曲角从90°增大到180°~270°。TN-LCD通常只有明暗两种变化,而STN-LCD显示器则以淡绿色和橙色为主。只要在STN-LCD上加上一彩色滤光片,并将单色显示矩阵中的每一像素分成三个子像素,分别通过彩色滤光片显示红、绿、蓝三基色,就可以显示出色彩了。TN-LCD显示原理示意图16.6液晶屏(LCD)及其工作原理简介TFT液晶屏为每个像素都设有一个半导体开关(FET晶体管),其加工工艺类似于大规模集成电路。由于每个像素都可以通过点脉冲直接控制,因而,每个节点都相对独立,并可以进行连续控制,这样的设计不仅提高了显示屏的反应速度,同时可以精确控制显示灰度,所以TFT液晶的色彩更逼真。FET晶体管具有电容效应,能够保持电位状态,已经透光的液晶分子会一直保持这种状态,直到FET电极下一次再加电改变其排列方式。TFT-LCD显示原理示意图16.7液晶屏(LCD)及其工作原理简介液晶屏的显示要求设计专门的驱动电路和显示控制电路驱动电路包括提供液晶屏的驱动电源和液晶分子偏置电压,以及液晶显示屏的驱动逻辑;显示控制部分可由专门的硬件电路组成,也可以采用集成电路(IC)模块。16.8S3C2410LCD控制器功能与结构S3C2410LCD控制器用于传输显示数据和产生控制信号,支持屏幕水平和垂直滚动显示,数据的传送采用DMA(直接内存访问)方式,支持单色LCD显示屏,也支持彩色LCD显示屏。其特点归纳如下:专用中断功能(INT_FrSynandINT_FiCnt)使用系统内存作为显存支持多种虚拟显示屏(支持水平/垂直滚屏)对于不同的显示屏,支持可编程定时控制支持小端和大端字节模式以及WinCE数据格式支持SECTFTLCD屏(LTS350Q1-PD1/PD2)16.9S3C2410LCD控制器功能与结构支持STNLCD显示器支持3种类型的扫描方式:4位单扫描,4位双扫描和8位单扫描支持256色和4096色彩色STNLCD典型的实际屏幕大小是:640×480,320×240,160×160等最大虚拟屏幕占内存大小为4M字节256色模式下最大虚拟屏幕大小:4096×1024,2048×2048,1024×4096等16.10S3C2410LCD控制器功能与结构支持TFTLCD显示器支持1,2,4或8bpp彩色调色显示支持16bpp和24bpp非调色真彩显示在24bpp模式下,最多支持16M种颜色支持多种屏幕大小典型的实际屏幕大小是:640×480,320×240,160×160等最大虚拟屏幕占内存大小为4M字节64K色模式下最大虚拟屏幕大小:2048×1024等16.11S3C2410LCD控制器功能与结构LCD控制器由REGBANK、LCDCDMA、TIMEGEN、VIDPRCS和LPC3600组成,其结构框图如下:S3C2410LCD控制器结构框图16.12S3C2410LCD控制器功能与结构REGBANK由17个可编程的寄存器组和一块256*16的调色板内存组成,它们用来配置LCD控制器的;LCDCDMA是一个专用的DMA,它能自动地把在侦内存中的视频数据传送到LCD驱动器,通过使用这个DMA通道,视频数据在不需要CPU的干预的情况下显示在LCD屏上;VIDPRCS接收来自LCDCDMA的数据,将数据转换为合适的数据格式,比如说4/8位单扫,4位双扫显示模式,然后通过数据端口VD[23:0]传送视频数据到LCD驱动器;16.13S3C2410LCD控制器功能与结构TIMEGEN由可编程的逻辑组成,他生成LCD驱动器需要的控制信号,比如VSYNC、HSYNC、VCLK和LEND等等,而这些控制信号又与REGBANK寄存器组中的LCDCON1/2/3/4/5的配置密切相关,通过不同的配置,TIMEGEN就能产生这些信号的不同形态,从而支持不同的LCD驱动器(即不同的STN/TFT屏);LPC3600是专用于三星公司LTS350Q1-PD1/PD2液晶屏的时序逻辑控制单元。16.14S3C2410LCD控制器功能与结构LCD外部接口信号VFRAME/VSYNC/STV:帧同步信号(STN)/垂直同步信号(TFT)/SECTFT信号VLINE/HSYNC/CPV:行同步脉冲信号(STN)/水平同步信号(TFT)/SECTFT信号VCLK/LCD_HCLK:像素时钟信号(STN/TFT)/SECTFT信号VD[23:0]:LCD像素数据输出端口(STN/TFT/SECTFT)VM/VDEN/TP:LCD驱动器交流信号(STN)/数据使能信号(TFT)/SECTFT信号LEND/STH:行结束信号(TFT)/SECTFT信号LCD_PWREN:LCD屏电源控制信号LCDVF0:SECTFT信号OELCDVF1:SECTFT信号REVLCDVF2:SECTFT信号REVB16.15TFTLCD控制器操作TIMEGEN(脉冲发生器)产生适合LCD驱动器的各种控制信号,如VSYNC,HSYNC,VCLK,VDEN,和LEND等信号。这些控制信号与寄存器组中的控制寄存器LCDCON1/2/3/4/5的配置密切相关。基于这些可编程LCD控制寄存器,肪冲发生器可以产生可编程的信号,可支持各种不同类型的LCD驱动器。本课程以16位色的TFT液晶屏为例,讲解S3C2410LCD控制器的对该液晶屏的操作方法。16.16TFT液晶时序图16.17TFTLCD控制器操作上面时序图上各时钟延时参数的含义如下:(这些参数的值,LCD产生厂商会提供相应的数据手册)VBPD(verticalbackporch):表示在一帧图像开始时,垂直同步信号以后的无效的行数;VFBD(verticalfrontporch):表示在一帧图像结束后,垂直同步信号以前的无效的行数;VSPW(verticalsyncpulsewidth):表示垂直同步脉冲的宽度,用行数计算;16.18TFTLCD控制器操作上面时序图上各时钟延时参数的含义如下:(这些参数的值,LCD产生厂商会提供相应的数据手册)HBPD(horizontalbackporch):表示从水平同步信号开始到一行的有效数据开始之间的VCLK的个数;HFPD(horizontalfrontporth):表示一行的有效数据结束到下一个水平同步信号开始之间的VCLK的个数;HSPW(horizontalsyncpulsewidth):表示水平同步信号的宽度,用VCLK计算;HOZVAL与LINEVAL的值与实际LCD屏和尺寸有关,公式如下:HOZVAL=(水平显示尺寸)-1LINEVAL=(垂直显示尺寸)-116.19TFTLCD控制器操作VSYNCVSPW+1VBPD+1LINEVAL+1VFPD+1HSPW+1HSYNCHBPD+1HFPD+1HOZVAL+1水平同步信号前肩水平同步信号后肩垂直同步信号前肩垂直同步信号后肩16.20TFTLCD控制器操作所有显示器显示图像的原理都是从上到下,从左到右的。一副图像可以看做是一个矩形,由很多排列整齐的点一行一行组成,这些点称之为像素。那么这幅图在LCD上的显示原理就是:A:显示指针从矩形左上角的第一行第一个点开始,一个点一个点的在LCD上显示,在上面的时序图上用时间线表示就为VCLK,我们称之为像素时钟信号;B:当显示指针一直显示到矩形的右边就结束这一行,那么这一行的动作在上面的时序图中就称之为1Line;C:接下来显示指针又回到矩形的左边从第二行开始显示,注意,显示指针在从第一行的右边回到第二行的左边是需要一定的时间的,我们称之为行切换;16.21TFTLCD控制器操作D:如此类推,显示指针就这样一行一行的显示至矩形的右下角才把一副图显示完成。因此,这一行一行的显示在时间线上看,就是时序图上的HSYNC;E:然而,LCD的显示并不是对一副图像快速的显示一下,为了持续和稳定的在LCD上显示,就需要切换到另一幅图上(另一幅图可以和上一副图一样或者不一样,目的只是为了将图像持续的显示在LCD上)。那么这一副一副的图像就称之为帧,在时序图上就表示为1Frame,因此从时序图上可以看出1Line只是1Frame中的一行;F:同样的,在帧与帧切换之间也是需要一定的时间的,我们称之为帧切换,那么LCD整个显示的过程在时间线上看,就可表示为时序图上的VSYNC。16.22TFTLCD控制器操作一帧时间宽度=(VSPW+1)+(VBPD+1)+(LINEVAL+1)+(VFPD+1);此处数值以行宽度为单位(HSYNC信号的周期)一行时间宽度=(HSPW+1)+(HBPD+1)+(HOZVAL+1)+(HFPD+1);此处数值以像素时间宽度为单位(VCLK信号的周期)16.23TFTLCD控制器操作VCLK的速率取决于寄存器LCDCON1中CLKVAL的值VCLK(Hz)=HCLK/[(CLKVAL+1)x2](像素频率)帧频即为VSYNC信号的频率帧频与控制寄存器LCDCON1及LCDCON2/3/4中的VSYNC、VBPD、VFPD、LINEVAL、HSYNC、HBPD、HFPD、HOZVAL和CLKVAL有关联。帧频可由下公式得出FrameRate=1/[{(VSPW+1)+(VBPD+1)+(LIINEVAL+1)+(VFPD+1)}×{(HSPW+1)+(HBPD+1)+(HFPD+1)+(HOZVAL+1)}×{2×(CLKVAL+1)/(HCLK)}]16.24图像数据在内存中存储S3C2410X中TFTLCD控制器支持1、2、4或8位每像素带调色板显示和16或24位每像无调色板真彩色显示。S3C2410X为TFT型LCD控制提供了256色调色板。256色调色板由256(深度)×16位SPSRAM组成,这种调色板可支持5:6:5(R:G:B)和5:5:5:1(R:G:B:I)两种格式。这两种格式中用户可从64K种颜色选择256种颜色显示。每个像素颜色:红、绿、蓝