芯达stm32入门系列教程之十三《点亮lcd液晶屏

芯达stm32入门系列教程之十三《点亮lcd液晶屏

ID:30196063

大小:187.04 KB

页数:6页

时间:2018-12-27

芯达stm32入门系列教程之十三《点亮lcd液晶屏_第1页
芯达stm32入门系列教程之十三《点亮lcd液晶屏_第2页
芯达stm32入门系列教程之十三《点亮lcd液晶屏_第3页
芯达stm32入门系列教程之十三《点亮lcd液晶屏_第4页
芯达stm32入门系列教程之十三《点亮lcd液晶屏_第5页
资源描述:

《芯达stm32入门系列教程之十三《点亮lcd液晶屏》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、STM32入门系列教程点亮LCD液晶屏Revision0.01(2010-04-28)原想把本期《点亮LCD液晶屏》教程放在《GPIO编程》之后,以提高大家的兴趣,但考虑到可能网友学习STM32,是想更多地了解STM32内部工作机制,因此在之前的教程,我们先介绍了串口、外部中断、定时器等最基本的外设模块,有了这些基础,相信您再来学习LCD液晶,已经很轻松了。我们使用的是芯达STM32配套的2.4寸TFT液晶触摸屏,它是山寨手机上的触摸液晶屏,内部驱动IC为ILI9325。我们操作LCD,实际上就是在操作ILI9325。有关该芯片的资料,请参考如下两个网址

2、:ILI9325英文datasheet:http://www.arm79.com/read.php?tid=1979ILI9325指令说明(中文):http://www.arm79.com/read.php?tid=1980考虑到“触摸”涉及到太多的原理,因此把触摸屏单独列出一期教程详细讲解。这里只讲述如何去点亮LCD液晶屏,如果您看完本期教程,能理解LCD驱动过程,那么笔者心满意足。要驱动LCD,分两个部分讲解:1、CPU内部模块支持的LCD接口(这里使用FSMC模块)2、LCD控制电路一、STM32的FSMC原理如果是单片机,相信大家再熟悉不过了,直

3、接拿P0或者P1口用作LCD数据总线,再另外拿出几个IO口用作控制信号线——一个LCD控制电路完成了。STM32相对于单片机,有啥过人之处呢?对于STM32系列的CPU来说,有两种方法给LCD总线赋值。第一个方法,就是给对应的GPIOx_ODR寄存器赋值——这与单片机一样,单片机也是给P0-P3寄存器赋值,使得信号能从对应的IO端口输出。而STM32的另一种方法就是使用FSMC。FSMC全称“静态存储器控制器”。使用FSMC控制器后,我们可以把FSMC提供的FSMC_A[25:0]作为地址线,而把FSMC提供的FSMC_D[15:0]作为数据总线。1、F

4、SMC包括哪几个部分?FSMC包含以下四个模块:(1)AHB接口(包含FSMC配置寄存器)(2)NOR闪存和PSRAM控制器(3)NAND闪存和PC卡控制器(4)外部设备接口要注意的是,FSMC可以请求AHB进行数据宽度的操作。如果AHB操作的数据宽度大于外部设备(NOR或NAND或LCD)的宽度,此时FSMC将AHB操作分割成几个连续的较小的数据宽度,以适应外部设备的数据宽度。2、FSMC对外部设备的地址映像从上图可以看出,FSMC对外部设备的地址映像从0x60000000开始,到0x9FFFFFFF结束,共分4个地址块,每个地址块256M字节。可以看

5、出,每个地址块又分为4个分地址块,大小64M。对NOR的地址映像来说,我们可以通过选择HADDR[27:26]来确定当前使用的是哪个64M的分地址块,如下页表格。而这四个分存储块的片选,则使用NE[4:1]来选择。数据线/地址线/控制线是共享的。这里的HADDR是需要转换到外部设备的内部AHB地址线,每个地址对应一个字节单元。因此,若外部设备的地址宽度是8位的,则HADDR[25:0]与STM32的CPU引脚FSMC_A[25:0]一一对应,最大可以访问64M字节的空间。若外部设备的地址宽度是16位的,则是HADDR[25:1]与STM32的CPU引脚F

6、SMC_A[24:0]一一对应。在应用的时候,可以将FSMC_A总线连接到存储器或其他外设的地址总线引脚上。二、LCD控制电路设计1、信号线的连接STM32F10xxxFSMC有四个不同的banks(每个64M字节)可支持NOR以及其他类似的存储器。这些外部设备的地址线,数据先和控制线是共享的。每个设备的访问通过片选来决定,而每次只能访问一个设备。FSMC提供了所有的LCD控制器的信号:FSMC_D[16:0]16bit的数据总线FSMCNEx:分配给NOR的256M,再分为4个区,每个区用来分配一个外设,这四个外设的片选分为是NE1-NE4,对应的引脚

7、为:PD7—NE1,PG9—NE2,PG10-NE3,PG12—NE4FSMCNOE:输出使能,连接LCD的RD脚。FSMCNWE:写使能,连接LCD的RW脚。FSMCAx:用在LCD显示RAM和寄存器之间进行选择的地址线,即该线用于选择LCD的RS脚,该线可用地址线的任意一根线,范围:FSMC_A[25:0]。注:RS=0时,表示读写寄存器;RS=1表示读写数据RAM。举例1:选择NOR的第一个存储区,并且使用FSMC_A16来控制LCD的RS引脚,则我们访问LCD显示RAM的基址为0x60020000,访问LCD寄存器的地址为:0x60000000。

8、举例2:选择NOR的第四个存储区,使用FSMC_A0控制LCD的RS脚,则访问L

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。