[英]ESP-ADF I2S Recording choppy with PSRAM enabled
首先; 我將 ESP-IDF 4.2 與 ESP-ADF 一起使用,並且有兩個 CMM4030D 麥克風連接到定制板上的 ESP32-WROVER-E。 這些麥克風應將 wav 文件錄制到 SPI 連接的 SD 卡中。
這工作完美無缺,但不是在啟用 PSRAM 時。 應該在啟動時初始化(它確實如此)並且可以使用 heap_caps_alloc()、PSRAM 的頻率以及 SPI Flash 的頻率進行分配。 設置為 80MHz,並且沒有任何東西連接到引腳 16 和 17。
SDK 配置很可能不是問題,因為我以 wifi-ble 共存示例的配置為基礎。
所以,總結一下; 當 PSRAM 被啟用(啟動時啟動並且可以使用 heap_caps_alloc 分配)時,記錄是不穩定的,但是當它被禁用時(但仍然運行相同的代碼)它工作正常......到底是什么原因導致這個問題?
親切的問候,
困惑的約赫姆
我已經設法為這個問題實現了一個解決方法,包括在啟動時禁用 PSRAM 的初始化。 然后可以使用以下 function 初始化 PSRAM。
static void psram_init(){
esp_spiram_init();
esp_spiram_init_cache();
esp_spiram_test();
esp_spiram_add_to_heapalloc();
}
一種方法是通過禁用 sdk 配置中的啟動時初始化選項來防止 ESP-ADF 使用 PSRAM 分配緩沖區。 這當然會導致可用的 memory 減少(這是不希望的),但它至少使我能夠朝着 MVP 努力。
有關更多詳細信息,可以查看GitHub 上的問題。
親切的問候,
約赫姆
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.