esp_pm_lock_create用法咨询

damibear
Posts: 6
Joined: Thu Jul 29, 2021 2:50 am

esp_pm_lock_create用法咨询

Postby damibear » Tue Oct 05, 2021 12:33 pm

Code: Select all

esp_pm_lock_create(esp_pm_lock_type_t lock_type, int arg,const char* name, esp_pm_lock_handle_t* out_handle)
想请教一下这个函数的第二个参数是什么意思?看了注释还是不太理解。我现在目的是想让某段程序运行时(rmt)不自动进入light-sleep模式。

Code: Select all

ESP_ERROR_CHECK(esp_pm_lock_create(ESP_PM_NO_LIGHT_SLEEP, 1, "rmt_send_task", &rmt_send_task_pm_lock));
现在是这样创建的,在程序段的前后添加了

Code: Select all

esp_pm_lock_acquire(rmt_send_task_pm_lock);

Code: Select all

esp_pm_lock_release(rmt_send_task_pm_lock);

ESP_Dazz
Posts: 308
Joined: Fri Jun 02, 2017 6:50 am

Re: esp_pm_lock_create用法咨询

Postby ESP_Dazz » Sat Oct 09, 2021 6:55 am

Code: Select all

int arg
目前,这个参数直接配 0 就行。这个参数是为了未来有更多 esp_pm_lock_type_t 时候而需要更多配置信息的时候,不用改 API 直接用 arg。现在的 lock type 不需要这个参数,所以直接配 0 就行。

函数调用法看起来没有问题。

damibear
Posts: 6
Joined: Thu Jul 29, 2021 2:50 am

Re: esp_pm_lock_create用法咨询

Postby damibear » Sat Oct 09, 2021 7:06 am

明白了,我后来也尝试了把参数改为0发现功能上好像并没有什么改变。
非常感谢您的讲解。

Who is online

Users browsing this forum: Bing [Bot] and 142 guests