乐鑫技术交流
直播中

高桂清

7年用户 1039经验值
私信 关注
[问答]

为什么在Arduino开发环境使用2.0版本开发板库后效率极其低下呢?

本次遇见的问题就非常奇怪:首先,我用的是Arduino IDF,当前产品中,使用的MCU为 ESP32-PICO-D4,开发板还有ESP32-WROOM-32等参与测试。之前使用的开发库是1.0.6版本,没有发现有大问题,但我的应用中需要用到“MCPWM”功能,需要用到其中 mcpwm_group_set_resolution()等功能设置,在1.0.6版本中,我没有找到相关的设置,于是就用虚拟机安装了 2.0.4版本。此2.0.4版本使用过程中,出现了一些问题:
起初,我发现同一段程序,使用2.0.4版本的执行效率要比1.0.6版本低很多,不明就里我就写了一段程序,看看同一颗MCU在不同库文件版本中的差异:

使用1.0.6(2.0之前的版本基本都是)每秒可以达到 6615903的loop计数频率。
而使用 2.0.4(2.0以后的版本,试了2.0.0,2.0.4,2.0.5) 每秒只能达到 不到 140000 的loop计数频率。
这个性能差异巨大,还请有这方面经验的朋友帮忙看看,是哪里出来什么问题吗?



更多回帖

发帖
×
20
完善资料,
赚取积分