当前位置: 首页 > news >正文

ESP32-TFT_eSPI.h文件的使用心得(包含画图相关函数)

目录


前言

环境:arduino

芯片:ESP32


一、Arduino中的使用

#include <TFT_eSPI.h>
TFT_eSPI tft = TFT_eSPI();tft.init();//初始化tft.setRotation(0);                 //屏幕旋转方向tft.fillScreen(TFT_BLACK);//底色tft.setTextSize(2);                 //字体大小tft.setTextColor(TFT_DARKGREEN);    //文字颜色// sprite.setSwapBytes(true);//决定字体是RGB还是BGRtft.setCursor(10,10);               //文字位置tft.loadFont(font20);tft.println(tempDisplay1);//打印一个变量tft.setCursor(170,test_12-=40);               //文字位置 tft.println("后天");//打印汉字String tempDisplay2 = String(day[2].wendu_H) + "/" + String(day[2].wendu_L);  tft.println(tempDisplay2);//打印字符串,效果是10/01,十点零一分

 1.需要包含TFT_eSPI.h的文件库

2.声明下TFT_eSPI函数为tft

3.一些初始化的内容

4.关于文字的大小和字体,如果没有变化,代码执行一次就可以了,如果需要变更代码,则每次都需要重新声明想要的字体和大小.

5.打印汉字

6.打印带斜杠的字符串

一定要注意:不要打错字体.包括大小写和顺序.

一定要注意:不要打错字体.包括大小写和顺序.

一定要注意:不要打错字体.包括大小写和顺序.

谨记谨记谨记!!!

二、TFT_eSPI.h文件

1.Graphics drawing相关函数(画图)

 void     fillScreen(uint32_t color),drawRect(int32_t x, int32_t y, int32_t w, int32_t h, uint32_t color),drawRoundRect(int32_t x, int32_t y, int32_t w, int32_t h, int32_t radius, uint32_t color),fillRoundRect(int32_t x, int32_t y, int32_t w, int32_t h, int32_t radius, uint32_t color);void     fillRectVGradient(int16_t x, int16_t y, int16_t w, int16_t h, uint32_t color1, uint32_t color2);void     fillRectHGradient(int16_t x, int16_t y, int16_t w, int16_t h, uint32_t color1, uint32_t color2);void     drawCircle(int32_t x, int32_t y, int32_t r, uint32_t color),fillCircle(int32_t x, int32_t y, int32_t r, uint32_t color),drawEllipse(int16_t x, int16_t y, int32_t rx, int32_t ry, uint16_t color),fillEllipse(int16_t x, int16_t y, int32_t rx, int32_t ry, uint16_t color),drawTriangle(int32_t x1,int32_t y1, int32_t x2,int32_t y2, int32_t x3,int32_t y3, uint32_t color),fillTriangle(int32_t x1,int32_t y1, int32_t x2,int32_t y2, int32_t x3,int32_t y3, uint32_t color);

fillScreen:填充整个屏幕,参数是颜色

drawRect:画一个矩形,参数:(起点的X,Y,宽,高,颜色)(线宽默认一个像素)

drawRoundRect:画一个圆角的矩形,参数:(起点的X,Y,宽,高,角的半径,颜色)(线宽默认一个像素)

fillRoundRect:画一个圆角的矩形,将里面填充满,参数和上面一样,不过是里面全部填满

fillRectVGradient和fillRectHGradient:渐变色,从上到下和从左到右(理论,没有验证)

drawCircle:画一个圆,参数(圆心的X,Y,半径,颜色)

fillCircle:填充一个圆,参数同上,不过是填充满

drawEllipse:画一个椭圆,参数(圆心的X,Y半径的X,Y,颜色)
fillEllipse:填充一个椭圆,参数同上,不过是填充满

drawTriangle:画一个三角形,参数(三个点的X,Y,颜色)

fillTriangle:填充一个三角形


总结

TFT_eSPI是一个功能很强大的库,只介绍了其中关于画图相关的函数,其他的我有时间再进行介绍

相关文章:

ESP32-TFT_eSPI.h文件的使用心得(包含画图相关函数)

目录 前言 环境&#xff1a;arduino 芯片&#xff1a;ESP32 一、Arduino中的使用 #include <TFT_eSPI.h> TFT_eSPI tft TFT_eSPI();tft.init();//初始化tft.setRotation(0); //屏幕旋转方向tft.fillScreen(TFT_BLACK);//底色tft.setTextSize(2); …...

vite分目录打包以及去掉默认的.gz 文件

1.vite打包情况介绍&#xff1a; 1.1vite在不进行任何配置的情况下&#xff0c;会将除开public的所有引用到资源打包编译添加哈希值至assets文件夹中&#xff08;非引用文件以及行内样式图片未被打包编译资源会被treeSharp直接忽略不打包&#xff09;&#xff0c;     1.2w…...

Tensorflow 2.0 cnn训练cifar10 准确率只有0.1 [已解决]

cifar10 准确率只有0.1 问题描述踩坑解决办法 问题描述 如果你看的是北京大学曹健老师的tensorflow2.0,你在class5的部分可能会遇见这个问题 import matplotlib.pyplot as plt import tensorflow as tf from tensorflow.keras.layers import Dense, Dropout,MaxPooling2D,Fla…...

828华为云征文 | 在华为云上通过Docker容器部署Elasticsearch并进行性能评测

目录 前言 1. 华为云X实例介绍及优势 1.1 柔性算力 1.2 vCPU和内存的灵活配比 1.3 成本效益与性能 2. 安装并运行 Docker 2.1 修改仓库配置文件 2.2 安装 Docker 2.3 启动 Docker 3. 使用Docker部署Elasticsearch 3.1 拉取Elasticsearch镜像 3.2 启动Elasticsearch…...

生态位模型降重创新专题系列【2025

本内容旨在丰富最大熵模型的分析内容&#xff0c;并针对目前文章存在的问题&#xff1a;&#xff08;1&#xff09;分析内容单一&#xff0c;重复度高和查重率高&#xff0c;&#xff08;2&#xff09;建模流程过于简单&#xff0c;结果可信度评估方法过于单一等&#xff1b;推…...

LeetCode234. 回文链表(2024秋季每日一题 26)

给你一个单链表的头节点 head &#xff0c;请你判断该链表是否为回文链表。如果是&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,2,1] 输出&#xff1a;true 示例 2&#xff1a; 输入&#xff1a;hea…...

项目(石头剪刀布游戏双循环)

while (true) { #region 猜拳游戏主题逻辑 // 定义猜拳次数 int count 3; //定义用户赢得次数 int winCount 0;// 初始值为零表示用户一次没饿赢 int sysCou…...

Linux 进程3

进程地址空间 CPU读取数据都需要地址&#xff0c;在计算机中所有东西都是一种数据&#xff0c;包括我们的进程。 这是一个进程空间示意图&#xff0c;操作系统通过task_struct结构体链表来管理每一个进程&#xff0c;结构体里面有一个指针指向操作系统为进程开辟的一段空间&am…...

R语言机器学习遥感数据处理与模型空间预测技术及实际项目案例分析

随机森林作为一种集成学习方法&#xff0c;在处理复杂数据分析任务中特别是遥感数据分析中表现出色。通过构建大量的决策树并引入随机性&#xff0c;随机森林在降低模型方差和过拟合风险方面具有显著优势。在训练过程中&#xff0c;使用Bootstrap抽样生成不同的训练集&#xff…...

shell linux cut 切割字符串

shell linux 切割字符串 在Shell脚本中&#xff0c;可以使用内置的cut命令来切割字符串。cut命令主要有三个选项 -c、-f和-d&#xff0c;分别表示按字符、按字段和指定分隔符来切割字符串。 按字符切割&#xff1a; echo "Hello World" | cut -c 1-5 # 输出&#…...

golang学习笔记31——golang 怎么实现枚举

推荐学习文档 golang应用级os框架&#xff0c;欢迎stargolang应用级os框架使用案例&#xff0c;欢迎star案例&#xff1a;基于golang开发的一款超有个性的旅游计划app经历golang实战大纲golang优秀开发常用开源库汇总想学习更多golang知识&#xff0c;这里有免费的golang学习笔…...

fastadmin本地安装插件提示”请从官网渠道下载插件压缩包(code:2)(code:1)“

这个问题主要是在fastadmin中为了保证安全性&#xff0c;不让你进行本地的一个安装&#xff08;离线安装&#xff09; 解决办法就是去把相应的代码注释掉&#xff0c;把相应的权限开启。 具体步骤 1.在后台的application\config.php文件下&#xff1b; 将这个unknownsources的…...

STM32基础学习笔记-Timer定时器面试基础题5

第五章、TIMER 常见问题 1、基本概念&#xff1a;什么是定时器 &#xff1f;作用 &#xff1f;分类 &#xff1f; 2、时基单元 &#xff1f;组成 &#xff1f;计数模式 &#xff1f;溢出条件 &#xff1f; 溢出时间计算 &#xff1f; 3、systick原理 &#xff1f;代码讲解 &…...

CSS06-元素显示模式、单行文字垂直居中

一、什么是元素显示模式 1-1、块级元素 1-2、行内元素 1-3、行内块元素 1-4、小结 二、元素显示模式转换 三、单行文字垂直居中 CSS 没有给我们提供文字垂直居中的代码&#xff0c;这里我们可以使用一个小技巧来实现。 解决方案: 让文字的行高等于盒子的高度&#xff0c;就可…...

【车联网安全】车端网络攻击及检测的框架/模型

参考标准&#xff1a; 《汽车数据安全管理若干规定&#xff08;试行&#xff09;》ISO/SAE 21434《道路车辆 网络安全工程》威胁分析和风险评估&#xff08;TARA&#xff09;ISO/DIS 24089R155法规的国标转换&#xff1a;《汽车整车信息安全技术要求》&#xff08;UN R155&…...

58.【C语言】内存函数(memcpy函数)

目录 1.memcpy *简单使用 翻译: *模拟实现 注意事项: *例题 1.memcpy *简单使用 memcpy:memory copy cplusplus的介绍 点我跳转 翻译: 函数 memcpy void * memcpy ( void * destination, const void * source, size_t num ); 复制内存块 直接从source指向的位置复制num…...

rust一些通用编程的概念

rust一些通用编程的概念 官网文档数据类型 - Rust 程序设计语言 中文版 (rustwiki.org) 变量&#xff0c;数据类型&#xff0c;条件判断&#xff0c;循环 变量 rust中变量的可变性是值得注意的 例如: fn main(){let number 1;number 2;println!("the number is {}&quo…...

SpringBoot基础知识

谈一谈你对SpringBoot的理解&#xff0c;它有哪些特性&#xff08;优点&#xff09;&#xff1f; SpringBoot用来快速开发Spring应用的一个脚手架&#xff0c;其目的是用来简化新Spring应用的初始搭建以及开发过程。 优点&#xff1a; 简化配置&#xff1a;提供了很多内置的…...

ubuntu配置libtorch CPU版本

配置环境&#xff1a;Ubuntu 20.04Date&#xff1a;2024 / 08 1、下载最新版本的libtorch wget https://download.pytorch.org/libtorch/nightly/cpu/libtorch-shared-with-deps-latest.zip unzip libtorch-shared-with-deps-latest.zip2、创建一个C工程文件夹&#xff0c;目…...

Docker MySql 数据备份、恢复

docker-compose.yaml实例 version: 3.8 services:db:image: mysql:9.0.1environment:MYSQL_ROOT_PASSWORD: 123456MYSQL_DATABASE: dataMYSQL_USER: dataMYSQL_PASSWORD: 123456MYSQL_ROOT_HOST: % 1、备份 docker exec -it <容器名称> /usr/bin/mysqldump -u root -p12…...

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

今日科技热点速览

&#x1f525; 今日科技热点速览 &#x1f3ae; 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售&#xff0c;主打更强图形性能与沉浸式体验&#xff0c;支持多模态交互&#xff0c;受到全球玩家热捧 。 &#x1f916; 人工智能持续突破 DeepSeek-R1&…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)

骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术&#xff0c;它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton)&#xff1a;由层级结构的骨头组成&#xff0c;类似于人体骨骼蒙皮 (Mesh Skinning)&#xff1a;将模型网格顶点绑定到骨骼上&#xff0c;使骨骼移动…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)

前言&#xff1a; 最近在做行为检测相关的模型&#xff0c;用的是时空图卷积网络&#xff08;STGCN&#xff09;&#xff0c;但原有kinetic-400数据集数据质量较低&#xff0c;需要进行细粒度的标注&#xff0c;同时粗略搜了下已有开源工具基本都集中于图像分割这块&#xff0c…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

【WebSocket】SpringBoot项目中使用WebSocket

1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖&#xff0c;添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...