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
#include
然后,您需要定义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
#include
#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
#include
#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显示屏:显示文本,绘制形状和显示图像。使用此显示,您可以轻松地为项目添加漂亮的可视界面。
希望本教程对您有所帮助。也希望喜欢电子产品的朋友分享这篇文章。喜欢的朋友可以关注,我会分享更多的项目教程和应用。
arduino水温度传感器数字显示_液晶显示屏应用示例以及程序详解相关推荐
- arduino水温度传感器数字显示_温度传感器DS18B20
DS18B20 单线数字温度传感器,即"一线器件",其具有独特的优点: ( 1 )采用单总线的接口方式 与微处理器连接时 仅需要一条口线即可实现微处理器与 DS18B20 的双向通 ...
- arduino水温度传感器数字显示_创客出品_Arduino智能温度监测器
产品简介: 本机采用Arduino控制技术,采用LCD显示方式和白色背光,清晰明了.可实时显示当前摄氏温度,可实时语音播报当前摄氏温度,同时记录温度值储存在设备里,方便用户查看.最大设定温度范围为:- ...
- arduino水温度传感器数字显示_【雕爷学编程】Arduino动手做(5)---热敏温度传感器模块...
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备逐 ...
- arduino水温度传感器数字显示_乐创物联物联网架构之硬件层中间件Arduino模拟量...
0 前言 大家好!我叫乐创物联,我主要是做工业自动化方面和物联网方面的.了解熟悉工业自动化领域的,也开发过物联网相关的产品.我的初衷是做工业物联网的,但这个系统太过于庞大,后续也会自主去学习一下.所以 ...
- java判断颜色合法_判断颜色是否合法的正则表达式(详解)
判断颜色是否合法的正则表达式(详解) "^#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})$"; 意思是:以#开头,后面是数字和a-f的字符(大写或小写),这个值是 ...
- mysql存储过程按区间_针对新手的MYSQL存储过程详解_CSDN_ChenF的博客-CSDN博客
原文作者:橘左京i 原文标题:针对新手的MYSQL存储过程详解 发布时间:2021-02-22 10:03:18 一位爱好技术的橘右京的哥哥橘左京 前言:什么是存储过程?存储过程就像是一个接口,可以直 ...
- Arduino TFT_eSPI库来驱动SPI接口的LCD显示文字详解
Arduino TFT_eSPI库来驱动SPI接口的LCD显示详解 相关库github地址:https://github.com/Bodmer/TFT_eSPI 文字显示过程详解 TFT eSPI显示 ...
- 子网掩码必须是相邻的是什么意思_零基础IP子网划分详解
零基础IP子网划分详解 2016.8.22修正,感谢道友刘先生的提醒 在学习IP子网划分前,首先的明白以下几个基础概念: 1.IP地址组成 IP地址组成示意图 IP地址由32位二进制组成,32位二进制 ...
- python处理nc数据_利用python如何处理nc数据详解
利用python如何处理nc数据详解 来源:中文源码网 浏览: 次 日期:2018年9月2日 [下载文档: 利用python如何处理nc数据详解.txt ] (友情提示:右键点上行txt ...
最新文章
- 中国肠道大会 | 日程及嘉宾(4月16日更新)
- Android开发者指南(15) —— Managing Virtual Devices
- Web应用漏洞评估工具Paros
- python 贴吧自动回复机-python_库学习_02_微信自动回复机器人
- c语言n次方怎么输入_C语言实现斐波拉契数列
- js 里面令人头疼的 this
- mongodb查询分页优化
- Kafka刚开启就秒退
- Eclipse/STS 在线安装阿里java代码规约插件
- 台达ms300变频器使用手册中文_台达变频器:满足未来驱动需求
- [Linux] DSO missing from command line
- Linux 高阶命令进阶(一)
- 005 Aspectj的引入
- 《Inside C#》笔记(一) .NET平台
- 智慧校园APP开发有哪些功能
- pdf虚拟打印机下载win7_如何将不同形式的PDF文档进行压缩?
- SCI论文写作 -- 新手如何写第一篇sci
- SQLAlchemy 字段、要点
- HIT CSAPP hello的一生
- mysql删除日志文件_mysql删除日志文件,定时清理日志
热门文章
- c mysql命令_最基本的mysql命令
- tensorflow 读取cifar_对tensorflow中cifar-10文档的Read操作详解
- python爬虫ppt_完全零基础 轻松学Python:数据类型:数字类型、空类型、布尔类型...
- cupsd进程_linux pstree命令显示正在运行的进程的进程树状图
- 北师大高级程序c语言,北师大《高级程序设计C语言》.doc
- linux怎么卸载evolution,linux - 如何在Ubuntu的系统托盘中最小化Evolution? - Ubuntu问答...
- python画画需要什么模块_python实战练手项目---使用turtle模块画奥运五环
- java 怎么用毫秒_java1.8中如何使用精确到毫秒的时间
- linux程序改ip地址吗,如何在Linux中从C设置IP地址
- python 列表操作详解,Python列表解析操作实例总结