【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);
相关推荐
天若有情67310 分钟前
【C++原创开源】formort.h:一行头文件,实现比JS模板字符串更爽的链式拼接+响应式变量
开发语言·javascript·c++·git·github·开源项目·模版字符串
好家伙VCC14 分钟前
**发散创新:基于Python与ROS的机器人运动控制实战解析**在现代机器人系统开发中,**运动控制**是实现智能行为的核心
java·开发语言·python·机器人
2401_8274999914 分钟前
python项目实战09-AI智能伴侣(ai_partner_2-3)
开发语言·python
派葛穆16 分钟前
汇川PLC-Python与汇川easy521plc进行Modbustcp通讯
开发语言·python
程途知微1 小时前
ConcurrentHashMap线程安全实现原理全解析
java·后端
lzhdim1 小时前
SharpCompress:跨平台的 C# 压缩与解压库
开发语言·c#
嘿嘿嘿x31 小时前
Linux记录过程
linux·开发语言
Mars酱1 小时前
1分钟编写贪吃蛇 | JSnake贪吃蛇单机版
java·后端·开源
devpotato1 小时前
人工智能(四)- Function Calling 核心原理与实战
java·人工智能
默 语1 小时前
Records、Sealed Classes这些新特性:Java真的变简单了吗?
java·开发语言·python