Page 1 of 1

在Arduino开发环境,使用2.0以后版本开发板库以后,效率极其低下的问题

Posted: Sun Nov 13, 2022 12:04 am
by zhaoquanbin1980
大家好,第一次来此论坛交流,不知我发的位置是否合适,假如不合适,还请管理员辛苦帮忙挪一挪,或者告知我,谢谢!

本次遇见的问题就非常奇怪:首先,我用的是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在不同库文件版本中的差异:
屏幕截图 2022-11-13 080132.png
屏幕截图 2022-11-13 080132.png (57.07 KiB) Viewed 970 times
使用1.0.6(2.0之前的版本基本都是)每秒可以达到 6615903的loop计数频率。
而使用 2.0.4(2.0以后的版本,试了2.0.0,2.0.4,2.0.5) 每秒只能达到 不到 140000 的loop计数频率。

这个性能差异巨大,还请有这方面经验的朋友帮忙看看,是哪里出来什么问题吗?

在此先谢谢诸位了。