1.8寸TFT液晶屏,Arduino显示文本方法
在本应用中,我们将向您展示如何在Arduino上使用1.8 TFT显示屏。您将学习如何连接显示屏幕,书写文本,绘制形状以及在屏幕上显示图像。
使用1.8 TFT显示屏
1.8 TFT是具有128 x 160彩色像素的彩色显示器。显示器可以从SD卡加载图像-它的背面有一个SD卡插槽。下图显示了屏幕的前视图和后视图。
该模块使用SPI通信–请参见下面的接线。为了控制显示,我们将使用TFT库,该库已包含在Arduino IDE 1.0.5和更高版本中。
引脚接线
下表显示了到Arduino UNO的1.8 TFT接线。
1.8 TFT显示屏 接线到Arduino Uno
LED 3.3伏
SCK 13
SDA 11
A0或DC 9
RST 8
CS 10
地线 地线
VCC 5伏
注意:不同的Arduino板具有不同的SPI引脚。如果您使用的是其他Arduino开发板,请查看Arduino官方 。
初始化显示
TFT显示屏通过SPI通信与Arduino通信,因此您需要在代码中包括SPI库。我们还使用TFT库在显示器上书写和绘图。
#include <TFT.h>
#include <SPI.h>
然后,您需要定义CS,A0(或DC)和RST引脚:
#定义cs 10#定义
dc 9#定义
rst 8
创建一个名为TFTscreen的库的实例:
TFT TFT屏幕= TFT(cs,dc,rst);
最后,在setup()中,您需要初始化库:
TFTscreen.begin();
显示文字
要在显示屏上写文本,您可以自定义屏幕背景颜色,字体大小和颜色。
要设置背景颜色,请使用:
TFTscreen.background(r,g,b);
其中,r, g和b是给定颜色的RGB值。选择字体颜色:
TFTscreen.stroke(r,g,b);
设置字体大小:
TFTscreen.setTextSize(2);
您可以增加或减少作为参数给出的数字,以增加或减少字体大小。
最后,使用以下行在显示器上绘制文本:
TFTscreen.text(” Hello,World! “,x,y);
在其中” 世界,您好!“是您要显示的文本,(x,y)坐标是您要开始在屏幕上显示文本的位置。
程序代码
下面的示例显示” Hello,World!” 在屏幕中间,每200毫秒更改一次字体颜色。
将以下代码复制到Arduino IDE,并将其上传到Arduino开发板。
#include <TFT.h>
#include <SPI.h>
#define cs 10
#define dc 9
#define rst 8
TFT TFTscreen = TFT(cs, dc, rst);
void setup() {
TFTscreen.begin();
TFTscreen.background(0, 0, 0);
TFTscreen.setTextSize(2);
}
void loop() {
int redRandom = random(0, 255);
int greenRandom = random (0, 255);
int blueRandom = random (0, 255);
TFTscreen.stroke(redRandom, greenRandom, blueRandom);
TFTscreen.text(“Hello, World!”, 6, 57);
delay(200);
}
这是您的”世界,您好!” 在1.8 TFT显示屏上显示文本。
显示形状
TFT库提供有用的功能来在显示器上绘制形状:
· TFT屏幕。point(x,y) – 在(x,y)坐标上显示一个点
· TFT屏幕。线(XSTART,yStart,XEND,YEND) -绘制线,在(XSTART,yStart)的开始和结束处(XEND,YEND)
· TFT屏幕。rect(xStart,yStart,width,height) –绘制一个矩形,其左上角位于(xStart,yStart),具有定义的宽度和高度
· TFTscreen .circle(x,y,radius) –以指定的半径绘制一个以(x,y)为中心的圆
码
以下示例显示了几种形状。每次代码遍历循环,形状都会改变颜色。
将以下代码复制到Arduino IDE,并将其上传到Arduino开发板。
#include <TFT.h>
#include <SPI.h>
#define cs 10
#define dc 9
#define rst 8
TFT TFTscreen = TFT(cs, dc, rst);
void setup() {
TFTscreen.begin()
TFTscreen.background(0, 0, 0);
}
void loop() {
int redRandom = random(0, 255);
int greenRandom = random (0, 255);
int blueRandom = random (0, 255);
TFTscreen.stroke(redRandom, greenRandom, blueRadom);
TFTscreen.point(80,64);
delay(500);
TFTscreen.line(0,64,160,64);
delay(500);
TFTscren.rect(50,34,60,60);
delay(500);
TFTscreen.circle(80,64,30);
delay(500);
TFTscreen.background(0,0,0);
}
显示影像
1.8 TFT显示屏可以从SD卡加载图像。要从SD卡读取数据,请使用Arduino IDE软件中已包含的SD库。请按照以下步骤在显示屏上显示图像:
1) SD卡的焊接头引脚。与显示引脚相对的有四个引脚,如下图所示。
2) 显示器可以加载大于或小于显示器尺寸(160 x 128 px)的图像,但是为了获得更好的效果,请将图像尺寸编辑为160 x 128 px。
3) 图片应为 .bmp格式。为此,您可以使用照片编辑软件并将图像保存为 .bmp格式。
4) 将图像复制到SD卡上,然后将其插入显示屏背面的SD卡插槽中。
5) 按照下表将SD卡的引脚连接到Arduino:
显示屏和SD卡都可以通过SPI通信工作,因此您将在Arduino上使用两个连接来连接引脚。
6) 在Arduino IDE中,转到 文件>示例> TFT> Arduino> TFTBitmaLogo。
7) 编辑代码,以便它搜索您的图像。将” arduino.bmp ” 替换为您的图像名称:
徽标= TFTscreen.loadImage(” arduino.bmp “);
8) 将代码上传到您的Arduino。
注意:某些人在尝试从SD卡读取数据时发现此显示器有问题。我们不知道为什么会这样。实际上,我们测试了几次,但效果很好,然后,当我们要记录下来以显示最终结果时,显示屏不再能识别SD卡了-我们不确定是否有问题SD卡支架未与SD卡建立正确连接。但是,由于我们已经对其进行了测试,因此我们确定这些说明有效。
包起来
在本应用中,我们向您展示了如何在Arduino上使用1.8 TFT显示屏:显示文本,绘制形状和显示图像。使用此显示,您可以轻松地为项目添加漂亮的可视界面。
希望本教程对您有所帮助。也希望喜欢电子产品的朋友分享这篇文章。喜欢的朋友可以关注,我会分享更多的项目教程和应用。