艾巴生活网

您现在的位置是:主页>科技 >内容

科技

屏幕TFT,2.8英寸TFT触摸屏的使用教程

2024-01-10 13:02:01科技帅气的蚂蚁
摘要=" I class=" fa fa-exclusion-circle " "本教程适用于原2 8" TFT突破。有关本产品的最新版本,请访问3359 learn ada fru

屏幕TFT,2.8英寸TFT触摸屏的使用教程

摘要

="I class="fa fa-exclusion-circle""本教程适用于原2.8"TFT突破。有关本产品的最新版本,请访问3359 learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakout-V2获取更新教程。

通过彩色触摸屏LCD向您的项目添加爵士乐和爵士乐。这款TFT显示屏很大(对角线为2.8英寸),很亮(4个白色LED背光),色彩丰富(16位,262,000种不同色调)!240x320像素有单独的像素控制,比黑白128x64显示器分辨率更高。此外,这款显示器还连接了一个电阻式触摸屏,因此你可以在屏幕上的任何地方检测到手指的按压。

这款显示器内置了带RAM缓冲区的控制器,因此微控制器几乎不做任何工作。你需要8条数字数据线和4或5条数字控制线来读写显示器(总共12条线)。触摸屏需要4个管脚(2个数字,2个模拟),但是由于电阻式触摸屏的工作模式,我们可以和LCD共用管脚,所以整个设置可以通过12个管脚(10个数字,2个模拟)来运行。

当然,我们不会只留下数据表和“祝你好运!”详细说明:我们写了一个完整的开源图形库,可以画像素,线,矩形,圆和文字。我们还有一个触摸屏库,可以检测X,Y和Z(压力),并提供样本代码来演示一切。这段代码是为Arduino写的,但是可以很容易的移植到你喜欢的微控制器上!

今天就去Adafruit商店买一个吧!

规格:

2.8英寸液晶TFT显示屏

240x320分辨率,16位(262,000)彩色

内置文章RAM缓冲器的ILI9325(数据表)或ILI9328(数据表)控制器。

8位数字接口和4或5条控制线。

5V兼容!用于3.3V或5V的逻辑

板载3.3V @ 150mA LDO稳压器

4个白色LED背光灯,连接有晶体管,因此您可以对背光灯进行PWM调光。

1x20连接器便于电路板设计,或2x10引脚排列便于电缆连接。

4个0.125英寸/3毫米安装孔,带凸耳

4线电阻式触摸屏

本指南专门针对TFT LCD分支板。一个单独的教程,Arduino屏蔽版本的显示器。

连接选项

本教程适用于原2.8”TFT突破。现在,我们可以在https://learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakthrough-V2获得关于该产品最新版本的更新指南,但我们仍然保留该指南作为历史参考。

TFT LCD需要许多针脚来配合您的处理器工作。我们提供两种水龙头,您可以根据自己的应用来使用。

第一个(右)是单个1x20的标题,间距为0.1英寸。它非常适合用于面包板或手动布线。您可以使用“直”塞或“直角”塞使其直立(虽然如果以这种方式焊接,可能更难触摸)。

为了焊接插头,我们建议在面包板上插入一个20针的引脚带。

将LCD放在顶部,焊接每个引脚。

第二种是2x10双接缝胶带,间距为0.1英寸。这非常适合使用IDC线缆进行远程访问。我们建议使用6英寸的电缆,但您也可以使用12英寸的显示器,这取决于您在屏幕上书写的速度(更快意味着需要更短的电缆)。

此电缆是2x5而不是2x10,但较大的电缆看起来像。

你可以花2美元从digikey或者任何其他电子商店买到插座电缆。

安装选项

本教程适用于原2.8”TFT突破。现在,您可以在https://learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakthrough-V2获得有关该产品最新版本的更新指南,但您仍可以将该指南作为历史参考。

我们想确保您可以轻松地将显示器放入箱子中。标签上有四个安装孔。如果实在不需要,可以用钢锯或者铁皮锯掉。这些孔在短方向上间隔2.25英寸,在长方向上间隔2.95英寸。钻孔是0.125英寸,很容易使用# 4英寸或M3(3毫米)螺钉。PCB的厚度为0.063英寸。

背光布线

本教程适用于原2.8”TFT突破。现在,您可以在https://learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakthrough-V2获得有关该产品最新版本的更新指南,但您仍可以将该指南作为历史参考。

LCD有三个基本“组件”。

背光是第一个。四个白色发光二极管与一个晶体管并联来控制它们。这些led可以吸收高达80mA的电流,但你可以通过PWM背光来调光它们-晶体管可以很容易地连接到任何类型的微控制器输出。

假设您使用的是1x20连接器和Arduino,然后将它们一直连接到3V或5V引脚。对你的微控制器来说就不一样了。

首先将第一个LCD的地引脚接地,第二个3-5V引脚为5V(可以用3-5V,会给TFT和背光供电,所以请保证能提供100mA)。然后跳过5个针脚,将# 8背光针脚连接到5V。

启动设备,你会看到4个白色LED背光灯。如果这个不行,那就是你的电源有问题。回去修理电线!

TFT布线

本教程适用于原装2.8”TFT接线盒。现在,我们可以在https://learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakout-V2获得关于该产品最新版本的更新指南,但我们仍将该指南作为历史参考。

现在,背光可以正常工作,我们可以让TFT LCD正常工作,这需要大量的引脚,为了保持代码快速运行,我们为8条数据线硬编码了' ' Arduino数字引脚# 2-# 9。

从TFT的末端(电源引脚的另一侧)开始,然后依次将引脚连接到数字7到2。如果使用Mega,请按顺序将TFT数据引脚# 0-7连接到Mega引脚# 22-29。这些巨型引脚位于“双”连接器上。

然后将接下来的两个引脚分别连接到数字9和8。

如果使用Mega,请按顺序将TFT数据引脚# 0-7连接到Mega引脚# 22-29。这些巨型图钉位于“双”标题上。

除了8条数据线,你还需要4或5条控制线。

将第三个引脚CS(片选)连接到模拟3。

将第四个引脚C/D(命令/数据)连接到模拟2。

将第五个引脚WR(写入)连接到模拟1量程。

将第六个引脚RD (Read)连接到模拟0。

将第七针RST(复位)连接到Arduino复位线。当Arduino重置时,这将重置面板。您也可以使用数字引脚进行LCD复位,但这样可以节省一个引脚。

现在我们可以运行一些代码了!

液晶显示器测试

本教程适用于原2.8”TFT突破。现在,您可以在https://learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakthrough-V2获得有关该产品最新版本的更新指南,但您仍可以将该指南作为历史参考。

我们准备了可以和这些tft一起使用的样本代码,这些代码是为Arduino编写的,通过适配c可以移植到任何微控制器上。

需要下载安装两个库:一是TFTLCD库(包含针对本设备的底层代码),下载ZIP文件,解压并重命名为“Adafruit_TFTLCD”,放入Arduino库文件夹,然后重启Arduino IDE。如果你不熟悉,我们有一个教程,介绍Arduino库的概念和安装。

还需要李装鼓掌。你可以通过Arduino库管理器来实现。

打开Arduino库管理器:

搜索阿达果GFX图书馆,并安装它。

Arduino库安装教程,位于:

http://learn . ada fruit . com/ada fruit-all-about-arduino-libraries-install-use

在TFTLCD库文件夹中,您需要编辑TFTLCD.h。在第12行,您会看到“# define use _ ada fruit _ shield _ pinout”。注释掉这一行并保存文件。

重启Arduino软件后,你应该会在里面看到一个名为Adafruit_TFTLCD的新样本文件夹。被称为graphicstest的一个例子。将草图上传到你的Arduino。您可能需要按下重置按钮来重置arduino和TFT。您应该会在TFT上看到一组图形测试。

现在你知道一切都好了。如果遇到问题,请检查串口监视器。草图中要做的第一件事是从TFT读取驱动代码。应该是0x9328或者0x9325,所以如果看到类似0x8328的消息,说明D8引脚接线不正确,得到“0x9228”,那么D0引脚接线不正确。记住,这两个字是一个接一个念的。

图形库

本教程适用于原2.8”TFT突破。现在,我们可以在https://learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakthrough-V2获得关于该产品最新版本的更新指南,但我们仍然保留该指南作为历史参考。

图形库中有一些现成的功能可以帮助您开始一个项目。它并不详尽,如果可能的话,我们将尽力更新它。我们发现了一个非常有用的函数。

首先要注意的是颜色是16位,包括红绿蓝。在16位变量中,填充颜色的方式是前5位是红色,中间6位是绿色,后5位是蓝色。

对于纯色,我们有这个方便的备忘单。当然你可以选择262000种颜色中的任何一种,但是一开始可能会对ful有帮助。

下载:文件

复制代码

//颜色定义

#定义黑色0x0000

#定义蓝色0x001F

#定义红色0xF800

#定义绿色0x07E0

#定义青色0x07FF

#定义洋红色0xF81F

#定义黄色0xFFE0

#定义白色0xFFFF //颜色定义

#定义黑色0x0000

#定义蓝色0x001F

#定义红色0xF800

#定义绿色0x07E0

#定义青色0x07FF

#定义洋红色0xF81F

#定义黄色0xFFE0

#定义白色0xFFFF

阿达果GFX图书馆是一个绘制所有的点,线,形状和文本的图书馆。挺详细的,还有很多很酷的东西。欲了解更多信息,请访问http://learn.adafruit.com/adafruit-gfx-graphics-library.

这里是GFX图书馆的基本介绍,它没有。它不能涵盖一切,但它可以告诉你一些最流行的形状是什么样的。首先是最基本的像素驱动。你可以用两个坐标和一个颜色调用它,它会产生一个点:

下载:文件

复制代码

void drawPixel(uint16_t x,uint16_t y,uint 16 _ t color);void drawPixel(uint16_t x,uint16_t y,uint 16 _ t color);

您还可以绘制带有起点和终点以及颜色的线条。

下载:文件

复制代码

void drawLine(uint16_t x0,uint16_t y0,uint16_t x1,uint16_t y1,uint 16 _ t color);void drawLine(uint16_t x0,uint16_t y0,uint16_t x1,uint16_t y1,uint 16 _ t color);

如果你的线是垂直或水平的,你可以调用一个优化的绘图函数,它不会计算所有的角度。

下载:文件

复制代码

void draw verticalline(uint 16 _ t x0,uint16_t y0,uint16_t length,uint 16 _ t color);

void drawHorizontalLine(uint 16 _ t x0,uint16_t y0,uint16_t length,uint 16 _ t color);void draw verticalline(uint 16 _ t x0,uint16_t y0,uint16_t length,uint 16 _ t color);

void drawHorizontalLine(uint 16 _ t x0,uint16_t y0,uint16_t length,uint 16 _ t color);

接下来,您可以使用以下过程来绘制和填充矩形和正方形。如果您希望矩形具有对比轮廓颜色,请先填充矩形,然后在其上绘制矩形。

下载:文件

复制代码

void drawRect(uint16_t x0,uint16_t y0,uint16_t w,uint16_t h,uint 16 _ t color);

void fillRect(uint16_t x0,uint16_t y0,uint16_t w,uint16_t h,uint 16 _ t color);void drawRect(uint16_t x0,uint16_t y0,uint16_t w,uint16_t h,uint 16 _ t color);

void fillRect(uint16_t x0,uint16_t y0,uint16_t w,uint16_t h,uint 16 _ t color);

同样的,对于圆形,你可以画出来填充。

下载:文件

复制代码

void drawCircle(uint16_t x0,uint16_t y0,uint16_t r,uint 16 _ t color);

void fillCircle(uint16_t x0,uint16_t y0,uint16_t r,uint 16 _ t color);void drawCircle(uint16_t x0,uint16_t y0,uint16_t r,uint 16 _ t color);

void fillCircle(uint16_t x0,uint16_t y0,uint16_t r,uint 16 _ t color);

文字略有不同。你会设置文字大小,颜色,位置,然后打印()(像Serial.print()!)

下载:文件

复制代码

void setCursor(uint16_t x0,uint 16 _ t y0);

void setTextColor(uint 16 _ t color);

void setTextSize(uint 8 _ t size);void setCursor(uint16_t x0,uint 16 _ t y0);

void setTextColor(uint 16 _ t color);

void setTextSize(uint 8 _ t size);

从setCursor(x,y)开始,这将使文本的右上角变得任意。最初,它被设置为(0,0)。然后使用setTextColor(color)设置文本颜色,默认为白色。然后使用setTextSize(size)设置大小,这将文本“乘以”比例。您可以看到刻度为1(默认)、2和3。这是因为为了节省空间,我们只提供简单字体的库。你只需要缩放它来获得更大的文本,而不需要使用新的字体。

最后,可以像使用类似的一样使用print()或println()。可以用序列!例如,要打印一个字符串,使用print("Hello World")-上图中的第一行。要打印变量,也可以使用print(),第二行是print(1234.56),第三行是print(0xDEADBEEF,HEX)。

您也可以旋转图形。请注意,这不会旋转您已绘制的图形,但会重新定位所有新图形。

下载:文件

复制代码

void rotate(uint8_t旋转);void rotate(uint8_t旋转);

旋转变量可以是01、2或3。旋转0使其处于纵向模式,USB插孔在右上角。旋转2是垂直的,USB插孔在左下方。旋转1是风景模式,USB插孔在右下方,旋转3是风景模式,USB插孔在左上方。

旋转时,原点会随之移动。你可能需要参考屏幕尺寸,在纵向和横向之间有所不同。请使用宽度()和高度()!得到尺寸。

下载:文件

复制代码

uint 16 _ t width();

uint 16 _ t height();uint 16 _ t width();

uint 16 _ t height();

这些原语应该可以帮助您入门!

触摸屏

本教程适用于原2.8”TFT突破。有关本产品的最新版本,请访问https://learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakthrough-V2获取更新教程,但仍保留本教程作为历史参考。

2.8英寸4线电阻式触摸屏贴在液晶屏上。你可以用它来检测手指按压,手写笔等。您需要4个图钉来与触摸板对话,但您可以重复使用一些TFT LCD引脚!这是因为面板的电阻足够高,不会干扰数字输入/输出,当不使用引脚时,我们可以在TFT访问之间查询面板。

您可以按如下方式连接其余四个引脚。最左边的一个(Y-橙色)可以连接到数字9,下一个(X-绿色)连接到模拟2,下一个(Y-蓝色)连接到模拟3,最后一个(X-灰色)连接到数字8。X和Y引脚几乎必须连接到这些模拟引脚(或模拟4/5),但Y-/X可以连接到任何数字或模拟引脚。

下载库

首先打开Arduino库管理器。

搜索Adafruit触摸屏库并安装

我们还在以下网址提供了关于Arduino库安装的优秀教程:

http://learn.adafruit.com/adafruit-all-关于-arduino-库-安装-使用

现在启动Arduino库中的tftpaint示例。右边会有一个“颜色框”,你可以按“颜色框”选择要画的颜色。如果您按下屏幕末端左侧的区域,屏幕将被擦除。

你可以用指尖画画。

如果您按下屏幕末端的左侧区域,屏幕将被擦除。

位图

本教程适用于原2.8”TFT突破。有关本产品的最新版本,请访问https://learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakthrough-V2获取更新教程,但仍保留本教程作为历史参考。

我们在库中有一个示例草图,展示了如何显示存储在SD卡上的全色位图图像。你需要一个SD或microSD分支板。

Arduino软件的现代版本(0023或1.0或更高版本)已经包含了SD卡库。如果你使用的是旧的Arduino IDE,你可以下载我们的库。单击下载ZIP按钮,解压缩文件,并将结果文件夹重命名为“SD”。将文件夹移动到Arduino库文件夹(通常是[home]/documents/Arduino/libraries),然后重新启动IDE。

Wire像以前一样打开TFT(参见上一页),然后连接microSD卡的线路。

在Uno/Duemilanove上,你将需要使用以下连接:用DI连接SD卡修复11,用DO连接修复12,用SCK连接修复13(这是我们所有盾的标准配置),然后将pin 10转到CS。对于Mega,检查SPI连接是否连接到MEGA的SPI引脚(不是10-13)。

将woof.bmp和miniwoof.bmp文件复制到microSD卡上,插入到小组讨论中。在TFTLCD库中运行tftbmp示例草图,您应该会看到显示的图像。如果没有,请检查串行监视器,以了解为什么它可能不工作的提示。

下载

本教程适用于原2.8”TFT突破。有关本产品的最新版本,请访问https://learn . ada fruit . com/ada fruit-2-dot-8-color-TFT-touchbook-Breakthrough-V2获取更新教程,但仍保留本教程作为历史参考。

触摸屏库

TFT LCD库

GFX图书馆

SD卡库(如果运行最新的Arduino IDE就不需要!)