0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32驱动LCD的原理介绍

冬至子 来源:知晓编程 作者:Firefly 2023-07-11 16:03 次阅读

TFTLCD即薄膜晶体管液晶显示器。它与无源TN-LCD、STN-LCD的简单矩阵不同,它在液晶显示屏的每一个像素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。

图片

▲驱动流程

01

使用FSMC驱动LCD

关于FSMC,把数据写入相应的地址,FSMC就会把地址从FSMC_A出去,写入的数据会会从FSMC_D发出去。至于片选等信号线都是自动的。读的话,直接读相应的地址,就会拿到改地址上的数据。

FSMC驱动外部SRAM时,外部SRAM的控制一般有:

  • 地址线(如A0~A25)
  • 数据线(如D0~D15)
  • 写信号(WE,即WR)
  • 读信号(OE,即RD)
  • 片选信号(CS)

如果SRAM支持字节控制,那么还有UB/LB信号。

而TFTLCD的信号包括:RS(命令数据标志位)、D0~D15、WR、RD、CS、RST和BL等,其中真正在操作LCD的时候需要用到的就只有:

  • CS
  • WR
  • RS
  • D0~D15
  • RD

其操作时序和SRAM的控制完全类似,唯一不同就是TFTLCD有RS信号,但是没有地址信号。

TFTLCD通过RS信号来决定传送的数据是数据还是命令,本质上可以理解为一个地址信号,比如我们把RS接在A0上面,那么当FSMC控制器写地址0的时候,会使得A0变为0,对TFTLCD来说,就是写命令。而FSMC写地址1的时候,A0将会变为1,对TFTLCD来说,就是写数据了。这样,就把数据和命令区分开了,他们其实就是对应SRAM操作的两个连续地址。当然RS也可以接在其他地址线上。

因此,可以把TFTLCD当成一个SRAM来用,只不过这个SRAM有2个地址,这就是FSMC可以驱动LCD的原理。

02

标准8080接口

8080总线又叫Intel总线,大致来说,Intel总线的控制线有四根,RD写使能,WR读使能,ALE地址锁存,CS片选。

8080中:有RD(read),WR(Write)脚,RD,WR可以同时为高,不能同时为低!!RD为低时表示要从LCD中读出数据在D0-D7脚上,WR为低时表示:将当前D0-D7上的数据写入LCD

模块的8080并口读/写的过程为:

先根据要写入/读取的数据的类型,设置RS为高(数据)/低(命令),然后拉低片选,选中液晶IC,接着我们根据是读数据,还是要写数据置RD/WR为低,然后:

1.读数据:在RD的上升沿,读取数据线上的数据(D[15:0]);

2.写数据:在WR的上升沿,使数据写入到液晶IC里面;

图片

▲8080并口写时序

图片

▲8080并口读时序

NXP的UsingFlexIO to Drive 8080 Bus Interface LCDModule文档中同样也提到了8080接口(P6)

图片

▲写时序

图片

▲读时序

03

使用FSMC驱动8080接口

图片

▲读时序

图片

▲写时序

04

颜色模式

4.1

RGB565

每个像素用16比特位表示,占2个字节,RGB分量分别使用5位、6位、5位

图片

4.1

RGB888

每个像素用8比特位表示,占1个字节,注意:在内存中RGB各分量的排列顺序为:BGRBGR BGR ......

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2266

    文章

    10880

    浏览量

    355082
  • 薄膜晶体管
    +关注

    关注

    1

    文章

    29

    浏览量

    9764
  • TFTLCD
    +关注

    关注

    0

    文章

    36

    浏览量

    9336
  • SRAM存储器
    +关注

    关注

    0

    文章

    88

    浏览量

    13285
  • FSMC
    +关注

    关注

    0

    文章

    55

    浏览量

    38116
收藏 人收藏

    评论

    相关推荐

    STM32系列之LCD驱动接口与驱动程序介绍

    STM32F103系列是没有内置LCD控制器接口的,如果要驱动LCD,需要一颗LCD图形驱动IC
    的头像 发表于 04-24 17:26 1.1w次阅读
    <b class='flag-5'>STM32</b>系列之<b class='flag-5'>LCD</b><b class='flag-5'>驱动</b>接口与<b class='flag-5'>驱动</b>程序<b class='flag-5'>介绍</b>

    STM32是如何驱动LCD

    进行实战应用。LCD是深圳市拓普微科技开发有限公司的LMT028DN,分辨率是320*240,大小2.8寸,颜色65K的彩色屏,采用的是ST7789s液晶控制IC。颜色模式是565。01 驱动时序我们通常说的MCU-LCD接口,
    发表于 08-04 06:48

    STM32驱动LCD1602

    STM32驱动LCD1602,不是很难,主要注意GPIO_Write(GPIOD,(GPIO_ReadOutputData(GPIOD) & 0xff00) | cmd);对电平的读取是整个
    发表于 08-05 06:13

    STM32F10xxx LCD 驱动固件

    介绍STM32F10系列对LCD驱动的程序应用,学习STM32F10系列的必备资料
    发表于 11-12 15:09 25次下载

    stm32驱动lcd12864程序

    stm32驱动lcd12864的程序,仅供参考
    发表于 03-03 16:34 70次下载

    STM32F10xxx驱动LCD屏的固件

    STM32F10xxx驱动LCD屏的固件(程序包)。
    发表于 05-20 16:08 13次下载

    TFT-LCD驱动原理介绍

    TTL信号驱动原理,详细介绍了关于LCD液晶显示的原理,对于初学者是一份很好的理解LCD显示技术的资料。
    发表于 06-17 15:42 29次下载

    如何使用STM32的FSMC接口驱动LCD

    本实验向大家介绍如何使用STM32的FSMC接口驱动LCD屏,及使用触摸屏控制器检测触点坐标。
    发表于 09-22 12:04 0次下载

    分享一个LCD-12832的STM32驱动例程

    分享一个LCD-12832的STM32驱动例程
    发表于 04-01 16:11 80次下载

    TFT-LCD显示原理及驱动介绍的详细资料说明

    本文档的主要内容详细介绍的是TFT-LCD显示原理及驱动介绍的详细资料说明主要内容包括了:1.TFT LCD 简介,2.TFT-
    发表于 12-14 08:00 0次下载
    TFT-<b class='flag-5'>LCD</b>显示原理及<b class='flag-5'>驱动</b><b class='flag-5'>介绍</b>的详细资料说明

    STM32单片机驱动LCD1602的源代码免费下载

    本文档的主要内容详细介绍的是STM32单片机驱动LCD1602的源代码免费下载。
    发表于 12-30 08:00 110次下载
    <b class='flag-5'>STM32</b>单片机<b class='flag-5'>驱动</b><b class='flag-5'>LCD</b>1602的源代码免费下载

    使用STM32单片机实现LCD12864并口驱动实验的资料合集

    本文档的主要内容详细介绍的是使用STM32单片机实现LCD12864并口驱动实验的资料合集。
    发表于 03-24 08:00 116次下载
    使用<b class='flag-5'>STM32</b>单片机实现<b class='flag-5'>LCD</b>12864并口<b class='flag-5'>驱动</b>实验的资料合集

    基于STM32F103R6驱动LCD1602仿真设计的资料合集

    本文档的主要内容详细介绍的是基于STM32F103R6驱动LCD1602仿真设计,包含Protues仿真和程序文件。
    发表于 01-18 08:00 35次下载
    基于<b class='flag-5'>STM32</b>F103R6<b class='flag-5'>驱动</b><b class='flag-5'>LCD</b>1602仿真设计的资料合集

    STM32入门之LCD1602驱动

    LCD1602驱动要点:1. STM32的GPIO不是51单片机一样的准双向IO,读忙时需要设置。平台:STM32F103RCT6使用的GPIO:PB5,PB6,PB7 ;PA0~PA
    发表于 01-13 16:39 58次下载
    <b class='flag-5'>STM32</b>入门之<b class='flag-5'>LCD</b>1602<b class='flag-5'>驱动</b>

    AN3241 如何应用STM32F10XX的FSMC接口驱动QVGA_TFT-LCD屏幕

    AN3241 如何应用STM32F10XX的FSMC接口驱动QVGA_TFT-LCD屏幕
    发表于 11-24 08:31 2次下载
    AN3241 如何应用<b class='flag-5'>STM32</b>F10XX的FSMC接口<b class='flag-5'>驱动</b>QVGA_TFT-<b class='flag-5'>LCD</b>屏幕