1.st7735(spi的tft屏幕)

书接上回,配置完spi的屏幕基础,我们来简单学习一下屏幕上的接口…2024-5-10

当然我也是边学边做,有纰漏不要怪我 555

可以看到我的st7735屏幕从右向左,分别为,现在来简单介绍一下作用:

GND 接树莓派的GND(低电平)

VCC 接树莓派的3.3v的VCC(高电平)

SCL Serial Clock Line(时钟线)可能简单理解就是保障树莓派和屏幕通讯要有秩序的意思,连接树莓派的SCLK 23

SDA (数据线)传数据的,连接树莓派的MOSI(Mast Out Slave In)从树莓派的数据到屏幕那边去,而不是MISO,这个反过来了,不要看错了 19

RES (Reset)随便连一个gpio 22

DC (Data/Command)随便连一个gpio 18

CS (Chip Select)随便连一个gpio 24

BLK 随便连一个gpio (可以不用)

请添加图片描述

在你开始接线之前,记住你的接口号

什么是gpio去了解一下,不是树莓派上上的引脚都叫gpio…

坑点来了

111111.GND和vcc千万千万不要接反了,当接了这2根线的时候,你就可以看到屏幕亮了

1.连接树莓派的SCLK引脚而不是SCL.1或者SCL.0,gpt的回答是那个是给i2c使用的,不知道可以spi使用不,以后了解了再补充

2.使用luma这个库的时候,也有坑,这是我找的一个示例代码,但是我没跟着他一起连,导致了我屏幕没有东西出来,发现了有些引脚是spi库中定义好了的…有点尴尬(如图,dc rst啥的都定义好了,你可以在代码中修改)
请添加图片描述

3.st7735的屏幕显示大小不要乱改

只有这3种大小支持
请添加图片描述

好了差不多了接下来可以开始写字了

from luma.core.interface.serial import spi

from luma.lcd.device import st7735

from PIL import Image, ImageDraw

serial = spi(port=0, device=0)

device = st7735(serial, width=128, height=128, rotate=2, h_offset=1, v_offset=2, bgr=True)


buffer = Image.new(device.mode, device.size)

draw = ImageDraw.Draw(buffer)


while True:

 draw.rectangle(device.bounding_box, outline=None, fill=(152, 152, 3))

 draw.text((30, 50), "hello world!", "white")

 device.display(buffer)

我的问题来了,为什么这个spi函数定义的gpio_dc和gpio_rst是定义好了的,但是我插的不是那个引脚,也能点亮屏幕,还望大佬指点…
我去我懂了我说的是物理的引脚地址,他说的是bcm编码的地址

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值