触摸屏和显示屏参考文献

一般MCU屏都会自带显存,接口为16位的80并口,相当于支持RGB565模式,
驱RGB屏的话要用到STM32F429的LTDC+DMA2D模块,外加SDRAM作为显存

TFT-LCD显示原理及驱动介绍显示介绍TFTLCD驱动原理
TFT-LCD显示原理
一.TFTLCD显示原理
电子发烧友 TFT-LCD液晶显示器的工作原理详细介绍
液晶屏显示原理【行和列的控制方式】
知乎 显示屏技术简史
博客园 TFT LCD显示原理详解
道客巴巴 ppt TFTLCD简介与生产工艺流程 16元
CSDN stm32 TFTLCD驱动原理(一)
CSDN 【STM32】TFTLCD驱动原理
百度文库 LCD驱动原理【硬件设计】
百度文库 TFT-LCD的结构与显示原理ppt
百度文库 TFT LCD显示原理详解word
触摸屏定义、分类、寄存器
CSDN STM32学习笔记一一TFTLCD 显示
TFT-LCD驱动原理培训 【讲到了电路,但没讲解
二.硬件驱动
把屏幕这个硬件当作一个SRAM,然后用FMC驱动,就能进行读写。
TFTLCD的显示方式是逐行扫描,从哪个角落开始先纵向还是横向是由寄存器设定。显示字符的时候正点原子的实现方式是调用字库,temp是字块里的其中一列【总共csize列】每次画最高位,如果最高位有值就画上,没有值又不重叠就覆盖上背景色,然后temp移位,移8次后换下一列。
读写命令时有FMC硬件自动拉电平,程序只要找对命令和地址。

TFT-LCD 液晶显示屏是薄膜晶体管型液晶显示屏。 我们采用的 3.5
寸液晶屏,它的控制芯片是ILI9488,触摸驱动芯片为TSC2046。最大支持解析度为:HVGA,分辨率为480×320,接口可以为8位或者
16位并口
2.1 硬件驱动原理 根据描述像素点数据的长度,主要分为 8、16、 18和 24 位。 如以8 位来描述的像素点可表示 2^8=256色, 16 位描述的位2^16=65536。 ILI9488 最高可以控制 24 位的 LCD,可选RGB888. 但为了传输简便,我们采用16
位控制模式。对于 R:G:B=5:6: 5和这个图对应起来的话,举个例子就知道了,如果你想控制 LCD输出红色的像素点,那么在
GRAM相应的地址填入: 0xf800。 0X36,这是存储访问控制指令,可以控制 ILI9341 存储器的读写方向,简单的说,就是在连续写
GRAM 的时候,可以控制 GRAM 指针的增长方向,从而控制显示方式(读 GRAM 也是一样)。

在这里插入图片描述
触摸屏

ALIENTEK所选择的电容触摸屏,也是采用的是投射式电容屏(交互电容类型),所以后面仅以投射式电容屏作为介绍。
交互电容又叫做跨越电容,它是在玻璃表面的横向和纵向的ITO电极的交叉处形成电容。交互电容的扫描方式就是扫描每个交叉处的电容变化,来判定触摸点的位置。当触摸的时候就会影响到相邻电极的耦合,从而改变交叉处的电容量,交互电容的扫面方法可以侦测到每个交叉点的电容值和触摸后电容变化,因而它需要的扫描时间与自我电容的扫描方式相比要长一些,需要扫描检测X*Y根电极。目前智能手机/平板电脑等的触摸屏,都是采用交互电容技术。
电容触摸屏一般都需要一个驱动IC来检测电容触摸,且一般是通过IIC接口输出触摸数据

2.2阿波罗开发板硬件参数 stm32f429

在这里插入图片描述
基于STM32F429的SDRAM使用

SdramTiming.LoadToActiveDelay = 2;                                  //TMRD/TRSC,2个时钟周期
SdramTiming.ExitSelfRefreshDelay = 8;                               //TXSR,8个时钟周期
SdramTiming.SelfRefreshTime = 6;                                    //TRAS,6个时钟周期
SdramTiming.RowCycleDelay = 6;                                      //TRC,6个时钟周期
SdramTiming.WriteRecoveryTime = 4;                                  //TWR,4个时钟周期
SdramTiming.RPDelay = 2;                                            //TRP,2个时钟周期
SdramTiming.RCDDelay = 2;                                           //TRCD,2个时钟周期

STM32F429IGT6自带了256K字节的SRAM,不过在对内存要求高的场合,STM32F429自带的这些内存就不够用了。比如使用LTDC驱动RGB屏、跑算法或者跑GUI等,就可能不太够用,所以阿波罗STM32F429开发板板载了一颗32M字节容量的SDRAM芯片: W9825G6KH,满足大内存使用的需求。
对于这个存储阵列,我们可以将其看成是一个表格,只需要给定行地址和列地址,就可以确定其唯一位置,这就是SDRAM寻址的基本原理。而一个SDRAM芯片内部,一般又有4个这样的存储单元(BANK),所以,在SDRAM
内部寻址的时候,先指定BANK号和行地址,然后再指定列地址,就可以查找到目标地址。
在完成寻址以后,数据线DQ0~DQ15上面的数据会通过数据控制逻辑写入(或读出)存储阵列。
特别注意:因为SDRAM的位宽,可以达到32位,也就是最多有32条数据线,在实际使用的时候,我们可能会以:8位、16位、24位和32位等宽度来读写数据,这样的话,并不是每条数据线,都会被使用到,未被用到的数据线上面的数据,必须被忽略,这个时候就需要用到数据掩码(DQM)线来控制了,每一个数据掩码线,对应8个位的数据,低电平表示对应数据位有效,高电平表示对应数据位无效。
以W9825G6KH为例,假设以8位数据访问,我们只需要DQ0-DQ7的数据,而 DQ8-DQ15的数据需要忽略,此时,我们只需要设置LDQM为低电平,UDQM为高电平,就可以了。
Refresh,即刷新命令,用于刷新一行数据。SDRAM里面存储的数据,需要不断的进行刷新操作才能保留住,因此刷新命令对于SDRAM来说,尤为重要。
由于刷新是针对一行中的所有存储体进行,所以无需列寻址。在刷新过程中,所有 Bank 都停止工作,而每次刷新所占用的时间为9个时钟周期,也就是说在这9个时钟期间内,所有工作指令只能等待而无法执行。刷新周期一般为64ms。
这里根据前面提到的SDRAM初始化步骤,对SDRAM进行初始化,首先使能时钟配置,然后等待至少200us,对所有BANK进行预充电,执行自刷新命令等,最后配置模式寄存器完成对SDRAM的初始化。

在上面,我们介绍了TFTLCD模块(MCU屏)的使用,但是高分辨率的屏(超过800*480一般都没有MCU屏接口,而是使用RGB接口的,这种接口的屏,就需要用到STM32F429的LTDC来驱动了。在本章中,我们将使用阿波罗STM32F429开发板核心板上的LCD接口(仅支持RGB屏,本章介绍RGB屏的使用),来点亮LCD,并实现ASCII字符和彩色的显示等功能,并在串口打印
LCD ID,同时在LCD上面显示。

三.stm32cube下对LCD的初始化配置
微雪课堂 STM32CubeMX系列教程22:LCD-TFT控制器(LDTC)
CSDN STM32CubeMX配置FSMC之TFTLCD驱动,并移植STemWin
使用STM32CubeMX进行STM32F429 LCD编程<二>层配置
【HAL库每天一例】第037例:LCD-液晶显示
STM32Cube-17 | 使用硬件SPI驱动TFT-LCD(ST7789)
STM32CubeMX | 35-使用硬件FSMC驱动TFT-LCD屏幕(MCU屏,NT35510控制器)
STM32CubeMX6.0 + HAL + LittleVGL7.6 等学习[最全附工程源码]
STM32CubeMX配置LTDC

触摸屏
投射式触摸屏自电容与互电容工作原理基础
电容屏原理最详细的解说
电容式触摸屏(CTP)介绍
电容式触摸屏原理及详细资料
ITO导电玻璃的特性 透明导电膜玻璃的用途前景
电容式触摸屏入门(非常经典).
电容触摸屏原理及其驱动实现

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值