说明:鉴于我在嵌入式项目上经验和学习的不足,经常遇到基础问题。为避免重复出错,我将总结经验,以提高技能水平。
开发板:ESP32-C6-DevKitM-1
开发环境:ESP32-IDF v5.3.1+Vscode
出现的问题:
1.FAILED: HW_LEDCPWM.elf
int main(void)
{
esp_err_t ret;
ret = nvs_flash_init(); /* 初始化 NVS */
if (ret == ESP_ERR_NVS_NO_FREE_PAGES ||
ret == ESP_ERR_NVS_NEW_VERSION_FOUND)
{
ESP_ERROR_CHECK(nvs_flash_erase());
ret = nvs_flash_init();
}
pwm_init(10, 1000); /* 初始化 PWM */
while (1)
{
vTaskDelay(10); //ms级别延迟
pwm_set_duty(LEDC_PWM_DUTY); /* 设置占空比 */
}
}
原因:运行的不是main(),而是app_main(),修改过后就可正常编译。
int app_main(void)
{
esp_err_t ret;
ret = nvs_flash_init(); /* 初始化 NVS */
if (ret == ESP_ERR_NVS_NO_FREE_PAGES ||
ret == ESP_ERR_NVS_NEW_VERSION_FOUND)
{
ESP_ERROR_CHECK(nvs_flash_erase());
ret = nvs_flash_init();
}
pwm_init(10, 1000); /* 初始化 PWM */
while (1)
{
vTaskDelay(10); //ms级别延迟
pwm_set_duty(LEDC_PWM_DUTY); /* 设置占空比 */
}
}
360

被折叠的 条评论
为什么被折叠?



