美文网首页
[RaspberryPi] TFT液晶屏的使用

[RaspberryPi] TFT液晶屏的使用

作者: Cocoonshu | 来源:发表于2018-09-18 14:20 被阅读44次

我手里有一块驱动芯片为ST7735R的160 * 144分辨率的TFT液晶屏。
它是使用SPI驱动的TFT液晶屏模块,包含的引脚有:

  • LED,为背光引脚,有的模块也记作BL
  • SCK,SPI的时钟引脚,有的模块也记作CLK
  • SDA,SPI的数据引脚,有的模块也记作DAT
  • A0,Command/Data引脚,用于指示当前在SPI总线上传输的是指令还是像素数据,有的模块也记作RS
  • RST,模型硬重置引脚
  • CS,SPI的片选引脚
  • GND,公共接地
  • VCC,电源引脚,根据模型的实际情况选择3.3v和5v去连接

理论上,树莓派有很多种使用TFT液晶屏的方法:

  • 更新一版开源驱动内核,这是最偷懒的一个办法
  • 编写内核驱动程序去驱动TFT液晶屏
  • 编辑用户态下的应用程序,使用ioctl来驱动SPI,从而使用TFT液晶屏

方法一:开源驱动

这里使用的开源驱动是notro编写的fbTFT
Github地址为:https://github.com/notro/fbtft/wiki/fbtft_device

1. 启用SPI

在终端的raspi-config中开启SPI,或者在开始菜单中的raspi-config里开启SPI都可以,下面的方法是在终端里开始SPI:

  • 在终端输入
    pi@Cocoonshu sudo raspi-config

  • 选择:5 Interfaceing Options,进入接口设置页面

    Raspi-config
  • 选择:P4 SPI,进入SPI接口的设置

    Interfaceing Options
  • 选择:<是>,开启SPI

    Enable SPI
  • 选择:<确定>,确认SPI的开启

    Confirm SPI enabled
  • 确认完成后会回到主页面,选择:<Finish>,完成配置

    Raspi-config
  • 此后可能涉及到需要重启,按照提示重启,或者在终端输入:
    pi@Cocoonshu sudo reboot

2. 连接TFT液晶屏到树莓派

[TODO]

3. 更新fbTFT驱动
pi@Cocoonshu sudo wget https://raw.github.com/Hexxeh/rpi-update/master/rpi-update -O /usr/bin/rpi-update
pi@Cocoonshu sudo chmod +x /usr/bin/rpi-update
pi@Cocoonshu REPO_URI=https://github.com/notro/rpi-firmware
pi@Cocoonshu sudo rpi-update
4. 挂载驱动

在终端中使用modprobe命令来挂载制定的模块。
在fbTFT的fbtft_device.c文件中定义了很多模块的名称,可在其中根据你TFT液晶屏的主控芯片查阅到模块名。我的TFT液晶屏是ST7735R主控的,查阅到的模块名为adafruit18

pi@Cocoonshu sudo modprobe fbtft_device name=adafruit18 gpios=reset:23,dc:24,led:25 speed=16000000

[未完.......]

相关文章

网友评论

      本文标题:[RaspberryPi] TFT液晶屏的使用

      本文链接:https://www.haomeiwen.com/subject/dtwunftx.html