esp单片机下arduino_gfx不相干显示驱动优化对flash空间的占用对比

一般情况下,很多esp32或者esp8266下的tft模块驱动都会包含很多种,而我们只需要其中一种,那就有个疑问这些被编译进的显示驱动到底占用了多少空间,是否需要把他优化掉?

这是默认的驱动列表:

84个文件,430k

 

这是优化后的驱动列表,只保留了两种驱动

6个文件,81.6k

优化前编译占用

esp8266

RAM:   [====      ]  44.6% (used 36540 bytes from 81920 bytes)
Flash: [===       ]  33.9% (used 353793 bytes from 1044464 bytes)

esp32

RAM:   [=         ]   6.7% (used 21972 bytes from 327680 bytes)
Flash: [===       ]  31.0% (used 406525 bytes from 1310720 bytes)

优化后编译占用

esp8266

RAM:   [====      ]  44.6% (used 36504 bytes from 81920 bytes)
Flash: [===       ]  33.8% (used 353277 bytes from 1044464 bytes)

 esp32

RAM:   [=         ]   6.7% (used 21964 bytes from 327680 bytes)
Flash: [===       ]  30.3% (used 397645 bytes from 1310720 bytes) 

这肯定是有相差的,但是这种相差基本可以忽略。

基于这个驱动还做了不相干开发板的各种清除,结果一样,大概也都是只优化了0.1%,所以最后的结论是:

这些不相干的驱动并不会占用太多的flash空间,完全可以忽略不计。

做这个的比对起因是编译器每次都把不相干的驱动编译一次占用了大量的编译时间,有可能是有编译没有包含;虽然这个比对是基于arduino_gfx的,但是tft_espi理论上是同样的。

补充说明:

把驱动从arduino_gfx切换为tft_espi后占用对比:

arduino_gfx:

esp8266

RAM:   [====      ]  44.6% (used 36504 bytes from 81920 bytes)
Flash: [===       ]  33.8% (used 353277 bytes from 1044464 bytes)

esp32

RAM:   [=         ]   6.7% (used 21964 bytes from 327680 bytes)
Flash: [===       ]  30.2% (used 395717 bytes from 1310720 bytes)

tft_espi:

esp8266

RAM:   [====      ]  36.4% (used 29844 bytes from 81920 bytes)
Flash: [====      ]  36.3% (used 379501 bytes from 1044464 bytes)

esp32

RAM:   [=         ]   6.8% (used 22284 bytes from 327680 bytes)
Flash: [===       ]  30.0% (used 392929 bytes from 1310720 bytes)

 

在esp8266下,tft_espi的RAM占用要优于arduino_gfx,但是磁盘占用要稍微多一点,在esp32下两者相差不大

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

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

相关文章

Java毕业设计-基于springboot开发的原创歌曲分享平台-毕业论文+答辩PPT(附源代码+演示视频)

文章目录 前言一、毕设成果演示(源代码在文末)二、毕设摘要展示1、开发说明2、需求分析3、系统功能结构 三、系统实现展示1、平台功能模块2、后台功能模块2.1管理员功能模块2.2用户功能模块 四、毕设内容和源代码获取总结 Java毕业设计-基于springboot开…

Node爬虫:原理简介

在数字化时代,网络爬虫作为一种自动化收集和分析网络数据的技术,得到了广泛的应用。Node.js,以其异步I/O模型和事件驱动的特性,成为实现高效爬虫的理想选择。然而,爬虫在收集数据时,往往面临着诸如反爬虫机…

HarmonyOS 应用开发之任务(Mission)管理场景介绍

任务(Mission)管理相关的基本概念如下: AbilityRecord:系统服务侧管理一个UIAbility实例的最小单元,对应一个应用侧的UIAbility组件实例。系统服务侧管理UIAbility实例数量上限为512个。MissionRecord:任务…

Unity类银河恶魔城学习记录11-7 p109 Aplly item modifiers源代码

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili ItemData_Equipment.cs using System.Collections; using System.Collecti…

1. Java概述

文章目录 1.Java语言概述1.1 Java介绍1.1.1 软件开发概述1.1.2 计算机语言1.1.3 Java 简史1.1.4 Java 技术体系平台1.1.5 Java在各领域的应用1.1.6 Java语言特点1.1.7 Java核心机制一-Java虚拟机1.1.8 Java核心机制二-垃圾回收1.1.9 Java开发工具 1.2 Java环境搭建1.2.1 JDK、J…

【软件安装】(十四)Ubuntu22.04安装Psensor硬件监视器

一个愿意伫立在巨人肩膀上的农民...... Ubuntu系统硬件运行查询输入指令太繁琐,终端展示不直观,因此这款具有可视化监控Ubuntu系统下当前电脑的硬件CPU(中央处理器)、GPU(显卡)和硬盘等温度等功能&#xff…

【JAVAEE学习】探究Java中多线程的使用和重点及考点

˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好,我是xiaoxie.希望你看完之后,有不足之处请多多谅解,让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN 如…

安装uim-ui插件不成功,成功解决

安装:这种安装,umi4 不支持,只有umi3才支持。而我发现官网现在默认使用的umi4。 yarn add umijs/preset-ui -D 解决:更改umi版本重新安装umi3 npm i ant-design/pro-cli3.1.0 -g #使用umi3 (指定umi3版本) pro create user-ce…

每日一题 第五十期 Codeforces Round 937 (Div. 4)

F. 0, 1, 2, Tree! time limit per test: 2 seconds memory limit per test: 256 megabytes input: standard input output: standard output Find the minimum height of a rooted tree † ^{\dagger} † with a b c abc abc vertices that satisfies the following c…

Python学习:模块

python 模块 Python 的模块是一个包含 Python 代码的文件,被用来组织和重用代码。下面详细解释模块,并给出一个示例: 创建模块:要创建模块,只需编写包含函数、类或变量的 Python 文件,并将其保存为以 .py 结…

在宝塔面板中,为自己的云服务器安装SSL证书,为所搭建的网站启用https(主要部分攻略)

前提条件 My HTTP website is running Nginx on Debian 10(或者11) 时间:2024-3-28 16:25:52 你的网站部署在Debain 10(或者11)的 Nginx上 安装单域名证书(默认)(非泛域名&#xf…

香港服务器怎么看是CN2 GT线路还是CN2 GIA线路?

不知道有没有小伙伴们注意过,很多人在租用香港服务器的时候都习惯性选择 CN2 线路?仿佛香港服务器是否采用 CN2 线路成为个人企业选择香港服务器的一个标准。其实,香港服务器有CN2、优化直连(163)、BGP多线(包含了国际和国内线路)&#xff0c…

健身运动耳机哪个牌子好?力荐五大品质翘楚的精品

健身已经成为许多人追求健康与活力的重要方式,而在健身的过程中,一款优质的耳机不仅能让你沉浸于音乐的世界,更能提升运动体验,激发无限潜能,那么如何选择一款既适合运动又品质卓越的耳机呢?今天我这个健身…

自动发卡平台源码优化版,支持个人免签支付

源码下载地址:自动发卡平台源码优化版.zip 环境要求: php 8.0 v1.2.6◂ 1.修复店铺共享连接时异常问题 2024-03-13 23:54:20 v1.2.5 1.[新增]用户界面硬币增款扣款操作 2.[新增]前台对接库存信息显示 3.[新增]文件缓存工具类[FileCache] 4.[新增]库存同…

期货开户要找到适合自己的系统

物有一个生物圈,大鱼吃小鱼,小鱼吃虾。在期货市场这条生物圈里面,大部分人就是期货市场的虾子,是被吃的,所以必须成长起来,往更高一层走,到可以吃虾子的时候,就是挣钱的时候。学习不…

buy me a btc 使用数字货币进行打赏赞助

最近在调研使用加密货币打赏的平台,发现idatariver平台 https://idatariver.com 推出的buymeabtc功能刚好符合使用场景,下图为平台的演示项目, 演示项目入口 https://buymeabtc.com/idatariver 特点 不少人都听说过buymeacoffee,可以在上面发…

Vue element-plus 导航栏 [el-menu]

导航栏 [el-menu] Menu 菜单 | Element Plus el-menu有很多属性和子标签,为网站提供导航功能的菜单。 常用标签: 它里面有两个子标签。el-menu-item,它其实就是el-menu每一个里面的item,item就是真实匹配到路由的每个栏目&#…

AP5414 0.8-5.5升压恒压 WLED 太阳能电源驱动方案

产品简介 AP5414 是一种输入电压范围宽(0.8~5.5V),可调恒定电流和限定电流两种模式来 驱动白光 LED 而设计的升压型 DC/DC 变换器。该器件能利用单节或双节干电池驱动单 颗大功率白光 LED,同样可以利用一节锂电池驱动两颗、三颗或…

Java基础-子类与继承

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 一、继承的概念 二、Java 方法重写 三、Object类 方法 四、final关键字 final 变量 五、Java 多态 …

基于CNN-RNN的动态手势识别系统实现与解析

一、环境配置 为了成功实现基于CNN-RNN的动态手势识别系统,你需要确保你的开发环境已经安装了以下必要的库和工具: Python:推荐使用Python 3.x版本,作为主要的编程语言。TensorFlow:深度学习框架,用于构建…