为了性能,放弃tft_eSPI,选择arduino_gfx吧

news2024/12/26 23:01:12

本来对于tft_espi和arduino_gfx没啥特别的感觉,都是tft屏幕驱动,arduino_gfx的好处就是除了支持tft外还支持一些oled屏幕。

谁知道在探寻我那个在单片机项目上显示中文方案 https://github.com/StarCompute/tftziku 时候,寻求极致性能测了一些东西。

tft_espi的初始化需要0.6s,arduino_gfx需要0.2s

说实话,就算是arduino_gfx的0.2s 个人都觉得太慢了。

 Arduino_GFX,TFT初始化耗时:0.141000 秒.
     TFT初始化耗时:0.194000 秒.

深入到arduino_gfx中,发觉这0.194s 是初始化过程中存在了delay,总共delay了3次,每次50ms 左右 ,这个delay不知道是否同硬件通讯的协议要求。

 if (_rst != GFX_NOT_DEFINED)
  {
    pinMode(_rst, OUTPUT);
    digitalWrite(_rst, HIGH);
    delay(100);
    digitalWrite(_rst, LOW);
    delay(ST7735_RST_DELAY);
    digitalWrite(_rst, HIGH);
    delay(ST7735_RST_DELAY);
  }
  else
  {
    // Software Rest
    _bus->sendCommand(ST7735_SWRESET); // 1: Software reset
    delay(ST7735_RST_DELAY);
  }

 经过测试,上面这个delay可以注释掉,但是,上面那个不行。大约能提升0,1s 的性能,出于保险起见,这0.1s 就不提升了。

没有研究tft_espi的0.6s是不是同样因为delay导致的。

额外说一点,在arduino,esp32,esp8266中,出于性能的考虑,别使用String这个东西了,太耗性能了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1693422.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kiwi浏览器 - 支持 Chrome 扩展的安卓浏览器

​【应用名称】:Kiwi浏览器 - 支持 Chrome 扩展的安卓浏览器 ​【适用平台】:#Android ​【软件标签】:#Kiwi ​【应用版本】:124.0.6327.2 ​【应用大小】:233MB ​【软件说明】:一款基于开源项目 Chr…

每日一题 求和

1.题目解析 求和_牛客题霸_牛客网 (nowcoder.com) 这一题,主要描述的就是求满足和为m的子序列,对与子序列的问题可以使用决策树。 2.思路分析 决策树如下图所示: 递归结束条件: 当当前和 sum 等于目标和 m 时,说明找到了一个满…

软考-下午题-试题二、三

主要是最后一问的不同解答 1、父图子图平衡 1、员工关系是否存在传递依赖?用100字以内的文字说明理由。2019 2、在职员关系模式中,假设每个职员有多名家属成员,那么职员关系模式存在什么问题? 应如何解决?2020 职员关系…

《计算机网络微课堂》1-4 计算机网络的定义和分类

本节课我们介绍计算机网络的定义和分类。 首先来看计算机网络的定义:计算机网络的精确定义并未统一,换句话说,全世界没有一个对计算机网络的公认的唯一定义。 这里我们给出一个计算机网络的最简单定义,即计算机网络是一些互相连接…

技术前沿 |【BLIP:统一理解和生成的自举多模态模型研究】

BLIP:统一理解和生成的自举多模态模型研究 摘要引言一、BLIP模型概述二、 BLIP模型在多模态任务中的应用三、总结 摘要 本文介绍了BLIP(Bootstrapping Language-Image Pre-training)模型,一个前沿的多模态模型,通过自…

Could not create connection to database server的错误原因

1、使用MyBatis 连接数据库报错 org.apache.ibatis.exceptions.PersistenceException: ### Error updating database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. ### The error may …

软件工程基础知识

一、软件工程概述 二、软件开发模型 三、软件开发方法 四、需求分析 五、系统设计 六、系统测试 七、软件开发项目管理 八、软件质量 九、软件度量

C#使用开源操作库MiniExcel操作Excel

简介 MiniExcel 简单、高效避免 OOM 的.NET 处理 Excel 查、写、填充数据工具。 目前主流框架大多需要将数据全载入到内存方便操作,但这会导致内存消耗问题,MiniExcel 尝试以 Stream 角度写底层算法逻辑,能让原本 1000 多 MB 占用降低到几 …

Git常用命令的使用

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

Introduction of Internet 计算机网络概述

计算机网络的概念 计算机网络的定义: 多台独立的计算机通过通信线路实现资源共享的计算机系统 计算机网络的组成 资源子网:提供共享的软件资源和硬件资源 通信子网:提供信息交换的网络结点和通信线路 计算机网络类型 按照拓扑排序 星型…

Android 配置本地解决下载 Gradle 慢的问题

步骤1 打开项目下 gradle/wrapper/gradle-wrapper.properties 文件。 步骤2 文件内容如下。 #Sat May 25 16:24:00 CST 2024 distributionBaseGRADLE_USER_HOME distributionPathwrapper/dists distributionUrlhttps\://services.gradle.org/distributions/gradle-8.7-bin…

API攻击呈指数级增长,如何保障API安全?

从远程医疗、共享汽车到在线银行,实时API是构建数字业务的基础。然而,目前超过90%的基于Web的网络攻击都以API端点为目标,试图利用更新且较少为人所知的漏洞,而这些漏洞通常是由安全团队未主动监控的API所暴露,致使API…

无人机测绘遥感技术及应用详解

一、技术原理与特点 无人机测绘遥感技术是基于无人机平台搭载各类遥感传感器,通过遥控或自主飞行的方式,快速获取地面目标信息的一种先进技术手段。该技术具有灵活高效、高分辨率、实时性强等特点,广泛应用于国土资源调查、环境监测、城市规…

备战秋招—模拟版图面试题来了

随着暑期的脚步逐渐临近,电子工程和集成电路设计领域的毕业生们,也将迎来了另一个求职的黄金期——秋招。我们总说机会是留给有准备的人。对于有志于投身于模拟版图设计的学子们来说,为了在众多求职者中脱颖而出,充分备战模拟版图…

solidworks画螺母学习笔记

螺母 单位mm 六边形 直径16mm,水平约束,内圆直径10mm 拉伸 选择两侧对称,厚度7mm 拉伸切除 画相切圆 切除深度7mm,反向切除 拔模角度45 镜像切除 倒角 直径1mm 异形孔向导 螺纹线 偏移打勾,距离为2mm…

Word/Excel/PPT使用技巧

Word篇 1、上一页是图片的,如何删除空白页回答:在闪烁处点击下,按住CtrlD,打开字体选项卡,勾选隐藏选项,就成功了,如下图 Excel篇 以上都是本人亲测有效,才放出来的(持续更新中&a…

Slash后台管理系统源码阅读笔记 实现环形图统计卡片

目前在梳理工作台相关的代码。 工作台的界面如下: 这里面的Banner的代码已经基本梳理完毕,整体代码如下: import { Col, Row } from antd; import Color from color;import Character3 from /assets/images/characters/character_3.png; i…

【DASBOOK】Mark loves cat

文章目录 一、工具下载二、Mark loves cat解题感悟 一、工具下载 克隆dirsearch仓库: git clone https://github.com/maurosoria/dirsearch.git下载 githack工具 git clone https://github.com/lijiejie/GitHack.git二、Mark loves cat 用dirsearch扫描目录&…

JS(ES_6)_2

1.创建对象的6种方式&#xff1a; 1. obnew Object() ob.nameah ob.age18 2. ob{name:ah,gae:18} 3.工厂模式&#xff1a; 设计一个函数&#xff0c;专门生产Person类型的对象 <script>function createPerson(name,age,family) {var o new Object();o.name name;o.…

WebGL的室内设计软件

WebGL (Web Graphics Library) 是一个JavaScript API&#xff0c;它提供了一种在网页上渲染3D图形的方法&#xff0c;无需使用插件。利用WebGL&#xff0c;开发者可以创建和展示复杂的3D场景&#xff0c;包括室内设计。以下是开发基于WebGL的室内设计软件时可能涉及的一些关键步…