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

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

3天内不再提示

Adafruit_ST7735

分享:

Adafruit_ST7735 库详解(中文)

Adafruit_ST7735 是 Adafruit 官方开发的开源 Arduino 库,专门用于驱动 ST7735 芯片的 TFT 液晶屏(常见尺寸:1.8寸、1.44寸等)。以下是核心信息:


核心功能

  1. 驱动支持
    • 兼容 ST7735 驱动的 TFT 屏幕(分辨率为 128x160 或 128x128)。
    • 支持硬件 SPI 和软件 SPI 通信模式。
  2. 图形操作
    • 基础绘图(点、线、矩形、圆形)。
    • 文本显示(多种字体大小、颜色)。
    • 位图显示(通过 .drawBitmap())。
    • 屏幕旋转(setRotation(0-3))。
  3. 性能优化
    • 支持屏幕局部刷新,减少数据传输量。
    • 直接内存写入(DMA)支持(需硬件支持)。

使用步骤

  1. 安装库

    • 在 Arduino IDE 中搜索 Adafruit ST7735,安装后会自动安装依赖库 Adafruit GFX(核心图形库)。
    • 或从 GitHub 下载:Adafruit ST7735 Library
  2. 接线示例(硬件 SPI): Arduino 引脚 ST7735 引脚
    5V / 3.3V VCC
    GND GND
    D13 (SCK) SCL
    D11 (MOSI) SDA
    D10 TFT_CS 片选引脚
    D9 TFT_DC 数据/命令控制
    D8 TFT_RST 复位引脚(也可用 -1 表示软复位)
  3. 代码框架

    #include <Adafruit_GFX.h>
    #include <Adafruit_ST7735.h>
    
    // 定义引脚
    #define TFT_CS   10
    #define TFT_DC    9
    #define TFT_RST   8  // 或写 -1 并接 RESET 到 Arduino RESET
    
    // 初始化对象(硬件 SPI)
    Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);
    
    void setup() {
     tft.initR(INITR_BLACKTAB);  // 初始化屏幕(黑屏版本)
     tft.fillScreen(ST7735_BLACK);  // 清屏为黑色
     tft.setRotation(1);          // 设置显示方向(0-3)
    
     tft.setTextColor(ST7735_GREEN);
     tft.setTextSize(2);
     tft.setCursor(10, 20);
     tft.println("Hello World!");
    }
    
    void loop() {
     // 绘制动态图形
     tft.fillRect(30, 50, 60, 30, ST7735_RED); // 画矩形
    }

常用函数

函数 说明
initR() 初始化屏幕(参数指定屏幕型号,如 INITR_BLACKTAB
fillScreen(color) 全屏填充颜色(如 ST7735_RED
drawPixel(x, y, color) 画单个像素点
drawLine(x0, y0, x1, y1, color) 画直线
drawRect(x, y, w, h, color) 画空心矩形
fillRect(x, y, w, h, color) 画实心矩形
drawCircle(x, y, r, color) 画空心圆
print("text") 显示文本(需先设置 setCursor() 位置)
setRotation(0-3) 设置屏幕旋转方向(0°~270°)

颜色格式:RGB565(16 位),预定义常量如 ST7735_BLUE,或通过 tft.Color565(255,0,0) 自定义(红、绿、蓝 0-255)。


常见问题解决

  1. 白屏/花屏
    • 检查电源是否充足(屏幕需 3.3V 或 5V)。
    • 确认 SPI 引脚连接正确(尤其 CSDCRST)。
    • 尝试降低 SPI 速度:tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST, SPI_MODE0, 4000000);
  2. 文本不显示
    • 确保先调用 setTextColor()setTextSize()
    • setCursor(x, y) 设置起始位置。
  3. 屏幕型号差异
    • 初始化时选择正确参数:
      • INITR_BLACKTAB:黑边框屏(常见 1.8")。
      • INITR_REDTAB:红边框屏。
      • INITR_GREENTAB:绿边框屏(需特殊处理偏移)。

进阶应用

  • 显示图片:使用 Adafruit ImageReader 库解码 BMP 文件。
  • 游戏开发:结合按键实现动态刷新(需优化帧率)。
  • 低功耗模式:调用 tft.enableDisplay(false) 关闭背光。

官方示例库路径:Arduino IDE → 文件 → 示例 → Adafruit ST7735 查看完整代码。

在Arduino上使用1.8英寸TFT显示屏的入门指南

下载每个库并解压缩文件夹。将它们重命名为“ Adafruit_ST7735”和“ Adafruit_GFX”,并将每个文件夹放置在Arduino Libraries文件夹内。我已将库的屏幕快照附加

2019-12-12 11:09:40

为什么无法让I2C+SPI在Wemos D1 Mini Pro上工作?

= Adafruit_ST7735(TFT_CS,TFT_DC, TFT_RST);BME280I2C bme;void setup(void) {Serial.begin(9600);while

heks 2023-02-27 08:20:08

ST7735的相关资料分享

目录前言一、3线SPI二、使用1.命令2.对应引脚调整总结前言驱动芯片是ST7735,之前在Arduino上找库,没几个能用的(我FW不能用肯定是我的错),最后还是自己从STM32移植一个。顺便介绍

茶壶茶茶 2022-01-25 06:18:42

如何实现ST7735STFT屏幕的驱动?

如何实现ST7735STFT屏幕的驱动?

小野七七 2022-02-08 06:08:17

CW32L083移植驱动st7735 TFT屏

在CW32L083上驱动ST7735

2023-07-04 19:16:19

TFT1.44寸屏ST7735驱动GitHub的相关资料推荐

STM32应用之TFT1.44寸屏ST7735驱动GitHub项目下载链接:点我下载硬件平台:stm32f103rct和1.44寸128x128 TFT屏(st7735驱动)IDE:keil MDK

母猪会上树 2022-02-18 06:56:58

ST7735 TFT显示屏颜色错乱问题怎么解决?

ST7735 TFT显示屏颜色错乱问题怎么解决?

梅利号 2022-02-17 06:32:14

[经验] 上海航芯ACM32F403RET7外设SPI测试。点亮SPI LCD屏.驱动芯片ST7735.

= ST7735_YSTART;// based on Adafruit ST7735 library for Arduinostatic const uint8_tinit_cmds1

HQGBOY 2022-10-23 10:55:04

【Milk-V Duo 开发板免费体验】3. 点亮st7735屏幕

前言 本文介绍milkv-duo加载st7735的lcd屏幕,以及屏幕显示log。 参考文章:记录为Linux配置spi屏幕(st7735s)https://community.milkv.io/t

voidpbq 2023-09-18 22:05:24

STM32F103ZET6驱动的ST7735s一直出现白屏是为啥呢?怎么解决?

STM32F103ZET6驱动的ST7735s一直出现白屏是为啥呢?怎么解决?

深海零下一度1 2022-02-21 07:25:38

STM32F407VET6+ST7735TFT LCD彩屏驱动程序分享

硬件准备STM32F407VET6开发板一块编译器使用的是STM32cubeide。屏幕使用的是如图所示的屏幕,驱动芯片是st7735.驱动协议采用的是spi通讯协议。和stm32芯片的连接方式如下

沈文强66 2022-02-18 07:34:17

怎样把ILI9326移植到Fireduino上替代原先的ST7735库呢

中断的引脚,进入中断后可以通过SPI方式读取电阻屏的AD值来计算点击的坐标,估计使用的芯片是XPT2046之类的。但是官方默认是ST7735 IC的显示屏,而且到现在为止,这个配套的显示屏还没有上市,买不到,无奈只好使用原来的给Arduino准备的TFT了。

lucas_songlea 2022-04-11 15:07:19

物联网行业中的TFT-LCD屏驱动_ST7735S设计详解

ST7735S是另一款液晶显示控制器,它具有更高的性能和功能。它支持最高分辨率为160×128的TFT模块,支持完整的RGB分量控制,并且具有一个16位数据总线,可以支持最高分辨率为320×240

2024-09-29 11:54:28

LilyGo-T-Wristband板无法通过SPI从ST7735读取ID寄存器咋办?

我在使用 LilyGo-T-Wristband 板将 Arduino 代码移植到本机 idf-esp 代码时遇到问题。无法通过 SPI 从 ST7735 读取 ID 寄存器。这是我的 SPI

ht_liu 2023-03-01 06:59:31

【国民技术N32项目移植】N32G457项目移植之RT-Thread SPI_TFT_LCD ST7735

ST7735的示例我原先在51黑论坛找到的例子:他是一个用stm32库函数实现的驱动LCD—ST7735的例子,在其工程目录下面有一个LCD的文件夹,我们今天就用这文件来移植实验:其目录如下:lcd.c

华仔stm32 2023-01-30 23:40:17

B7735

B7735 - SAW Components Low-Loss Filter for Mobile Communication 942,5 MHz - EPCOS

2022-11-04 17:22:44

【沁恒微CH32V307评估板试用体验】SPI驱动ST7735时序

驱动LCD是单片常用外设之一,我这里书写SPI驱动后,驱动ST7735不成功,将驱动与时序附下,希望得到沁恒官网的支持:ST7735初始化

华仔stm32 2022-05-26 20:19:37

【LuckFox Pico 开发板免费试用】3. 通过fbtft点亮st7735屏幕

前言 本章使用fbtft添加spi lcd st7735/gc9306。 fbtft生成fb0设备,后续通过lvgl可以实现自定义界面绘制。 一、电路图 使用开发板的spi0的scl以及mosi

voidpbq 2023-11-14 21:08:15

72-7735

TENMA - 72-7735 - Handheld Digital Multimeter, 3999 Count, Mean Value, Auto, Manual Range, 3.75 Digit

2024-06-21 01:48:04

一次学会使用Adafruit IO平台!

Adafruit IO 是一个免费/付费的IoT 平台,提供数据云端化、图像化的服务整合,Adafruit IO 可以让用户自由定义云端的资料内容;

2022-11-22 16:16:19

Adafruit 电缆组件 — 原型开发优选线束解析

为什么选择 Adafruit? ● Adafruit 是开源硬件领域的重要玩家。 Adafruit Industries 成立于 2005 年,以提供电子元件、硬件套件、开发工具和学习资源著名。它不

2025-12-04 15:58:48

浅析Adafruit_NeoPixel常用库函数

初始化包含头文件#include 针对AVR单片机的特殊设置#ifdef __AVR__ #include// Required for 16 MHz Adafruit Trinket#endif

gXDhn 2021-07-13 07:44:54

探索Adafruit FONA MiniGSM:小巧模块的强大功能

探索Adafruit FONA MiniGSM:小巧模块的强大功能 一、引言 在电子设计的世界里,我们常常追求小巧、多功能的模块,以满足各种项目的需求。Adafruit FONA MiniGSM就是

2026-05-10 16:40:06

Adafruit的Microsoft MakeCode简介

其他块或驱动程序可以打包在github repo中并加载到通过添加软件包对话框进行编辑。软件包可以包含JavaScript,C ++,是的! ASM! https://makecode.adafruit.com/packages

2019-11-28 08:42:51

如何去编写Adafruit_NeoPixel库函数的程序代码

如何对Adafruit_NeoPixel常用库函数进行初始化?如何去编写Adafruit_NeoPixel库函数的程序代码?

gXDhn 2021-09-22 08:10:28

Adafruit Feather HUZZAH ESP8266编译时出错怎么解决?

Mac Catalina 10.15.1、Arduino 1.8.10、Adafruit Huzzah 刚刚对操作系统和 IDE 进行了全新安装(即在格式化的驱动器上),ndex.json

一曲作罢 2023-05-04 07:14:20

Adafruit Ultimate GPS模块的使用教程

我们在Adafruit商店中提供了几种不同的GPS模块,但是没有一个能够满足我们的所有愿望-这就是为什么我们设计了这个小小的GPS接线板。我们认为这是 Ultimate GPS模块,因此我们将其命名为。它具有您想要的一切以及更多的功能:

2019-11-27 11:13:55

使用Adafruit IO作为MQTT控制Raspberry Pi GPIO的AC设备

在本教程中,我们将使用 Adafruit IO 作为 MQTT 代理来控制连接到 Raspberry Pi GPIO 的 AC 设备。

2022-09-01 16:30:26

Adafruit Feather nRF52 Bluefruit的学习指南

是可能是由于预建的adafruit-nrfutil无法在Mac上运行。如果您的Mac早于MacOS,则二进制文件是在MacOS 10.13上生成的。请更新您的macOS,或者您可以在这里按照此仓库

2019-11-27 09:03:35

探索 Adafruit Trellis:开源背光键盘驱动系统

探索 Adafruit Trellis:开源背光键盘驱动系统 在电子设计领域,一款优秀的开源背光键盘驱动系统能为项目带来更多的可能性和便利性。Adafruit Trellis 就是这样一款值得关注

2026-05-10 16:15:09

加载更多
Adafruit_ST7735相关专题
相关标签