ILI9481 TFT3.5寸屏STM32F446ZEXX FMC驱动方式详解

在这里插入图片描述
图片来源于网络,如若侵权请联系博主删除



1. 背景

最近做项目需要,博主在某宝上买了一块3.5寸的TFT屏,店家虽然发了资料,但是往产品上移植驱动点亮屏幕的过程中踩了不少的坑,本篇主要记录该款屏幕在STM32F446ZET6上用FMC的方式驱动点亮的过程,希望对感兴趣的小伙伴有帮助,请大家多多点赞、转发、交流!


在此贴上这款屏幕的某宝链接:3.5寸IPS液晶屏IPS3.5寸全视角TFT显示屏8/16位SPI串口TFT40P彩屏,博主买的是裸屏。
在这里插入图片描述


2. 基础知识

2.1 TFT-LCD

液晶显示器,即 Liquid Crystal Display(LCD),利用了液晶导电后透光性可变的特性,配合显示器光源、彩色滤光片和电压控制等工艺,最终可以在液晶阵列上显示彩色的图像。目前液晶显示技术以 TN、STN、TFT 三种技术为主,TFT-LCD 即采用了 TFT(Thin Film Transistor)技术的液晶显示器,也叫薄膜晶体管液晶显示器。
TFT-LCD 与无源 TN-LCD、STN-LCD 的简单矩阵不同的是,它在液晶显示屏的每一个象素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。TFT 式显示器具有很多优点:高响应度,高亮
度,高对比度等等。TFT 式屏幕的显示效果非常出色,广泛应用于手机屏幕、笔记本电脑和台式机显示器上。
由于液晶本身不会发光,加上液晶本身的特性等原因,使得液晶屏的成像角受限,我们从屏幕的的一侧可能无法看清液晶的显示内容。液晶显示器的成像角的大小也是评估一个液晶显示器优劣的指标,目前,规格较好的液晶显示器成像角一般在 120°~160°之间。

博主用的这款液晶规格如下:
在这里插入图片描述
博主选择的接口方式是16BIT并口,注意这款屏幕的驱动IC是ILI9481,这也是本篇的主角。

屏幕的接口定义如下:
在这里插入图片描述
在这里插入图片描述


特别注意:IM0/1/2 端口选择,在硬件上一般是选用电阻上下拉来做选择,因为博主选择的接口方式是16BIT,所以这里IM0/1/2 端口的配置就是 0 1 0的方式,具体看下表:
在这里插入图片描述
当然淘宝店家也给出了参考设计:
在这里插入图片描述


2.2 硬件接线

博主要用STM32F446ZET6自带的FMC功能驱动控制屏幕,所以在硬件连线上当然就要根据FMC的接口定义来接。


2.3 FMC

TBD.


2.4 ILI9481

配置驱动:

void lcd_ex_ili9481_reginit(void)
{
    lcd_wr_regno(0x11);
    bsp_DelayMS(20);
    lcd_wr_regno(0xD0);
    lcd_wr_data(0x07);
    lcd_wr_data(0x42);
    lcd_wr_data(0x1B);

    lcd_wr_regno(0xD1);
    lcd_wr_data(0x00);
    lcd_wr_data(0x05);
    lcd_wr_data(0x0C);

    lcd_wr_regno(0xD2);
    lcd_wr_data(0x01);
    lcd_wr_data(0x11);

    lcd_wr_regno(0xC0);
    lcd_wr_data(0x00);
    lcd_wr_data(0x3B);
    lcd_wr_data(0x00);
    lcd_wr_data(0x02);
    lcd_wr_data(0x11);

    lcd_wr_regno(0xC5);
    lcd_wr_data(0x02);

    lcd_wr_regno(0xC8);
    lcd_wr_data(0x00);
    lcd_wr_data(0x22);
    lcd_wr_data(0x37);
    lcd_wr_data(0x20);
    lcd_wr_data(0x04);
    lcd_wr_data(0x00);
    lcd_wr_data(0x04);
    lcd_wr_data(0x55);
    lcd_wr_data(0x77);
    lcd_wr_data(0x02);
    lcd_wr_data(0x04);
    lcd_wr_data(0x00);

    lcd_wr_regno(0x36);
    lcd_wr_data(0x2f);//0a

    lcd_wr_regno(0x3A);
    lcd_wr_data(0x55);//66

    bsp_DelayMS(120);
    lcd_wr_regno(0x29);
}

3. 软件抽象

TBD.

  • 15
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智驾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值