149| 6
|
[项目] 【花雕学编程】Arduino动手做(249)---GC9A01滚动显示文本 |
【Arduino】189种传感器模块系列实验(资料代码+仿真编程+图形编程) 实验二百四十九:1.28寸圆形彩色TFT显示屏 高清IPS 模块 240*240 SPI接口GC9A01驱动 项目之五十七:GC9A01园屏之从下往上对中滚动显示文本“Hello world” 实验开源代码
|
代码解析 1. 头部:包含库文件 cpp
SPI.h:用于支持 TFT 显示屏与 Arduino 之间的 SPI 通信。 Adafruit_GFX.h:Adafruit 提供的图形库,使绘制文字、形状等变得简单。 Adafruit_GC9A01A.h:GC9A01A 屏幕的驱动库,使 Arduino 可以正确控制该 TFT 显示屏。 2. 屏幕连接引脚 cpp
这些 #define 定义了 与 TFT 屏幕连接的引脚: TFT_CS:片选(CS),用于选择该屏幕的 SPI 通信。 TFT_DC:数据/命令切换(DC),决定发送的是命令还是数据。 TFT_RST:复位(RST),用于屏幕的 硬件复位(这里不使用)。 3. 初始化 TFT 屏幕对象 cpp
创建 GC9A01A 显示屏对象,使用之前定义的引脚进行初始化。 4. 关键参数定义 cpp
SCREEN_WIDTH 和 SCREEN_HEIGHT:屏幕分辨率(240×240)。 TEXT_COLOR 和 BACKGROUND_COLOR: tft.color565(r, g, b):使用 RGB565 格式 设定颜色。 这里设定 白色文本 (255, 255, 255) 和 黑色背景 (0, 0, 0)。 SCROLL_SPEED:滚动速度,单位是像素。 TEXT_X:计算文本的 X 轴位置,保证它 始终居中。 5. 设定滚动文本 cpp
message:要显示的文本 "Hello world"。 textY:文本的 初始 Y 坐标,从 屏幕底部 开始滚动。 6. setup() 初始化 cpp
Serial.begin(115200);:初始化串口(可用于调试)。 tft.begin();:初始化 TFT 屏幕,使其开始工作。 tft.setRotation(2);:设定 屏幕方向,确保文本正确显示。 tft.fillScreen(BACKGROUND_COLOR);:清屏,填充背景颜色。 7. loop() 实现滚动效果 cpp
清屏,确保每一帧的内容不会重叠。 设置文本颜色和大小: tft.setTextColor(TEXT_COLOR);:文本颜色 白色。 tft.setTextSize(3);:设置文本大小(较大)。 设定文本位置: tft.setCursor(TEXT_X, textY);:将文本 固定在中央,但 Y 轴每帧减少,从下向上滚动。 8. 头尾相接循环滚动 cpp
检查文本是否完全滚出屏幕顶部: 如果 textY < -20(文本超出上方),则 重置 Y 位置 到 屏幕底部,实现 循环滚动。 delay(50);:控制滚动速度,每次延迟 50 毫秒。 |
© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed