1.在VSCode中安装ESP-IDF:
在 VS Code 中安装 ESP-IDF:在-VS-Code-中安装-ESP-IDF、新建项目
【ESP-IDF篇】搭建ESP-IDF软件开发环境,包括手动命令行和VSCode两种方式
安装过程中可能会遇到的问题:解决-pip-安装第三方包时因-SSL-报错_pip-ssl error
在完全使用VSCode安装ESP-IDF环境后,不会存在ESP-IDF Terminal,而只能在VSCode中使用。所以我们可以通过执行esp-idf安装路径下的export.bat脚本来导出环境变量。下面是在任意路径下创建ESP-IDF Terminal的bat脚本
CMD获取ESP-IDF安装路径:echo %IDF_PATH%
@echo offset"startdir=%cd%"start cmd.exe /K"cd %IDF_PATH% && export.bat && cd %startdir%"bat脚本执行结果:
2. 创建第一个项目
创建项目idf.py create-project [项目名称]
进入项目目录并使用VSCode打开项目
添加ESP-IDF配置文件夹
编写void app_main(void)函数
#include<stdio.h>#include<stdlib.h>#include"freertos/FreeRTOS.h"#include"freertos/task.h"#include"freertos/semphr.h"staticSemaphoreHandle_t sync_task_1;staticSemaphoreHandle_t sync_task_2;staticSemaphoreHandle_t sync_task_3;volatileintval=5;staticvoidvTask1(void*pvParameters){xSemaphoreTake(sync_task_1,portMAX_DELAY);vTaskDelay(pdMS_TO_TICKS(10));for(;;){printf("task 1 run with %d\r\n",val);val--;vTaskDelay(pdMS_TO_TICKS(500));}}staticvoidvTask2(void*pvParameters){xSemaphoreTake(sync_task_2,portMAX_DELAY);vTaskDelay(pdMS_TO_TICKS(10));for(;;){printf("task 2 run with %d\r\n",val);val++;vTaskDelay(pdMS_TO_TICKS(500));}}staticvoidvTask3(void*pvParameters){xSemaphoreTake(sync_task_3,portMAX_DELAY);vTaskDelay(pdMS_TO_TICKS(10));for(;;){printf("task 3 run\r\n");vTaskDelay(pdMS_TO_TICKS(500));}}voidapp_main(){//Allow other core to finish initializationvTaskDelay(pdMS_TO_TICKS(100));UBaseType_t uxPriorityMain=uxTaskPriorityGet(NULL);//Create semaphores to synchronizesync_task_1=xSemaphoreCreateBinary();sync_task_2=xSemaphoreCreateBinary();sync_task_3=xSemaphoreCreateBinary();// create taskxTaskCreatePinnedToCore(vTask1,"task 1",4096,NULL,uxPriorityMain+1,NULL,tskNO_AFFINITY);xTaskCreatePinnedToCore(vTask2,"task 2",4096,NULL,uxPriorityMain+2,NULL,tskNO_AFFINITY);xTaskCreatePinnedToCore(vTask3,"task 3",4096,NULL,uxPriorityMain+3,NULL,tskNO_AFFINITY);// start taskxSemaphoreGive(sync_task_3);xSemaphoreGive(sync_task_2);xSemaphoreGive(sync_task_1);}选择COM端口
运行项目:按顺序执行build-->flash--->monitor,命令行:idf.py build--->idf.py -p [端口] flash--->idf.py -p [端口] monitor
选择调试方式
打开监视器(monitor)
使用快捷键Ctrl+]退出监视器
其他:
- esp-idf-监视器乱码_the_hudashao的博客-CSDN博客
- 安装驱动CP2102驱动
- ESP-IDF官方文档