【ESP32-S3】task和queue的使用

task使用

c++ 复制代码
//第一步 全局变量
TaskHandle_t energyTaskHandle = NULL;

//第二步 创建energy_wake_detection_task任务
xTaskCreatePinnedToCore(energy_wake_detection_task, "EnergyWake", 8192, NULL, 1, &energyTaskHandle, 0);

//第三步 使用这个TaskHandle_t
if (energyTaskHandle != NULL) {
  vTaskDelete(energyTaskHandle);
  energyTaskHandle = NULL;
  Serial.println("能量检测任务已停止");
}

队列的使用

c++ 复制代码
//第一 全局变量
static QueueHandle_t audioQueue = NULL;

//第二 创建队列
audioQueue = xQueueCreate(5, 256);

//第三 队列是否为空
if (audioQueue != NULL && isSpeak == false) {

//第四 向队列发送数据
xQueueSend(audioQueue, urlBuffer, 0);

//第五 队列接收数据到temp
xQueueReceive(audioQueue, temp, 0);

//第六 判断等待的队列有多少
while (uxQueueMessagesWaiting(audioQueue) > 0) {

//第七 清空集群
char temp[256];
xQueueReceive(audioQueue, temp, 0);
相关推荐
Hello eveybody11 小时前
介绍一下背包DP(C++)
开发语言·c++·动态规划·dp·背包dp
2301_8180084411 小时前
数据库模型设计实战:如何正向工程从模型建表_规范化项目开发流程
jvm·数据库·python
2401_8788204711 小时前
Sa-Token基础篇
java·spring boot·后端·sa-token
2301_8163743311 小时前
Nginx下构建PC站点
java·运维·nginx
Run_Teenage11 小时前
Linux:线程互斥,线程锁
运维·开发语言·jvm
小小de风呀11 小时前
de风——【从零开始学C++】(四):类和对象(下)
开发语言·c++·算法
无所事事O_o11 小时前
JAVA应用不定时卡顿问题排查过程记录
java·优化
覆东流11 小时前
第10天:python元组
开发语言·后端·python
CSCN新手听安11 小时前
【Qt】系统相关(一)内容简介,事件概念,事件的处理
开发语言·c++·qt
不想写代码的星星12 小时前
重识 std::tuple:一个被低估的编译期异构容器
开发语言·c++