当前位置: 首页 > news >正文

【ESP32】2.多任务处理

1.用ESP_IDF打开blink工程
2.主函数while循环之前添加两行代码,添加两个任务:

void app_main(void)
{
uint8_t buffer[3] = {0x01,0x02,0x02};/* Configure the peripheral according to the LED type */configure_led();// 创建任务1xTaskCreate(task1, "Task1", 2048, NULL, 1, NULL);// 创建任务2xTaskCreate(task2, "Task2", 2048, NULL, 1, NULL);while (1) {// ESP_LOGI(TAG, "Turning the LED %s!", s_led_state == true ? "ON" : "OFF");//  blink_led();/* Toggle the LED state *///  s_led_state = !s_led_state;// vTaskDelay(CONFIG_BLINK_PERIOD / portTICK_PERIOD_MS);///  vTaskDelay(111 / portTICK_PERIOD_MS);//   blink_led2();//  vTaskDelay(111 / portTICK_PERIOD_MS);//  printf("OKOK");//  uart_write_bytes(1,buffer,1);}
}

3.编写两个任务函数:

void task1(void *pvParameter)
{while (1){printf("Task 1 is running\n");vTaskDelay(100 / portTICK_PERIOD_MS); }
}
// 第二个任务的函数
void task2(void *pvParameter)
{while (1){printf("Task 2 is running\n");vTaskDelay(200 / portTICK_PERIOD_MS);}
}

4.打开终端,可以看到串口打印,串口1、2都在运行。
在这里插入图片描述

http://www.dtcms.com/a/267714.html

相关文章:

  • 相机位姿估计
  • 使用接口测试工具类Postman和浏览器的差异
  • C++ 语言特性31 - 协程介绍(2)
  • 用 Turbo Vision 2 为 Qt 6 控制台应用创建 TUI 字符 MainFrame
  • Redis性能优化
  • 五、Python新特性指定类型用法
  • AI大模型(六)Langchain核心模块与实战(一)
  • 使用LVM和扩展文件系统增加root分区存储容量
  • 信号和槽(4)
  • 3dmax物理材质转换标准材质,物理材质转VR材质,VR材质转标准材质3dmax物理材质转标准材质插件
  • 98.验证二叉搜索树
  • python实现简单的地图绘制与标记20250705
  • 【每天一个知识点】子空间聚类(Subspace Clustering)
  • 零基础保姆级本地化部署文心大模型4.5开源系列
  • Unity文件夹标签 —— FolderTag
  • SpinLock (TTAS) C-A-S 自旋锁实现原理
  • 人工智能学习60-Yolo
  • TCP协议概念和特性
  • cmd 的sftp传输;Conda出现环境问题: error: invalid value for --gpu-architecture (-arch)
  • Kotlin 协程:Channel 与 Flow 深度对比及 Channel 使用指南
  • 《自然语言处理:基于预训练模型的方法》-笔记
  • Java教程——深入学习guava之并发编程
  • 基于matlab的二连杆机械臂PD控制的仿真
  • 2025年5月-植物水分吸收和运输优化算法water uptake and transport-附Matlab免费代码
  • 数字地和模拟地
  • 使用 C++/OpenCV 和 MFCC 构建双重认证智能门禁系统
  • 白皮解读——173页数据安全治理白皮书5.0【附全文阅读】
  • 灵活应对市场波动的智能运营中枢​
  • leetcode918.环形子数组的最大和
  • Spark SQL架构及高级用法