96SEO 2026-02-19 18:55 13
FreeRTOS基于队列#xff0c;实现了多种功能#xff0c;其中包括队列集、互斥信号量、计数型信号量、二值信号量…一、简介

队列是任务到任务任务到中断、中断到任务数据交流的一种机制消息传递。
FreeRTOS基于队列实现了多种功能其中包括队列集、互斥信号量、计数型信号量、二值信号量、递归互斥信号量因此很有必要深入了解FreeRTOS的队列。
问题当多个任务写入消息给一个“满队列”时这些任务都会进入阻塞状态也就是说有多个任务
注我始终认为自己不是一个很聪明的人所以这些理论知识我都是浅尝辄止量力而行。
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);//设置系统中断优先级分组
delay_init();Key_Init();LED_Init();//
delay.h/******************************************************************任务配置****************************************************/
//用于存储系统中任务信息表格/******************************************************************任务函数****************************************************/
NULL){printf(\r\nkey_queue队列创建成功!\r\n);}else{
NULL){printf(big_data_queue队列创建成功!\r\n);}else{
printf(big_data_queue队列创建失败!\r\n);
}//创建开始任务xTaskCreate((TaskFunction_t
启动任务调度vTaskStartScheduler();}void
//进入临界区//创建1任务xTaskCreate((TaskFunction_t
//创建2任务xTaskCreate((TaskFunction_t
//创建3任务xTaskCreate((TaskFunction_t
pdTRUE){printf(key_queue队列发送失败\r\n);}}else
pdTRUE){printf(key_queue队列发送失败\r\n);}}vTaskDelay(50);}
pdTRUE){printf(key_queue队列读取失败\r\n);
}//不调用系统延时函数因为xQueueReceive函数如果读取完队列里面的数据就会由就绪态转变为阻塞态//
pdTRUE){printf(big_data_queue队列读取失败\r\n);
GPIO_InitStructure;/*开启时钟*/RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,
//开启GPIOB的时钟/*GPIO初始化*/GPIO_InitStructure.GPIO_Mode
GPIO_Mode_IPU;GPIO_InitStructure.GPIO_Pin
GPIO_Pin_14;GPIO_InitStructure.GPIO_Speed
GPIO_Speed_50MHz;GPIO_Init(GPIOB,
注意事项此函数是阻塞式操作当按键按住不放时函数会卡住直到按键松手*/
//读PB4输入寄存器的状态如果为0则代表按键1按下{KeyNum
//返回键码值如果没有按键按下所有if都不成立则键码为默认值0
按下按键1就会往队列key_queue里面写入key值1然后任务切换到task2将队列key_queue里面的数据读取出来
按下按键2就会往队列key_queue里面写入key值2然后任务切换到task2将队列key_queue里面的数据读取出来
按下按键2就会往队列big_data_queue里面写入key值3然后任务切换到task3将队列big_data_queue里面的数据读取出来
configSUPPORT_DYNAMIC_ALLOCATION
//xQueue待写入的队列pvItemToQueue待写入的消息xTicksToWait阻塞超时时间
//xQueue待读取的队列pvBuffer信息读取缓冲区xTicksToWait阻塞超时时间
问题任务2task2和任务3task3没有系统延时函数xTaskDelay按优先级来说应该一直执行任务3task3复位后却先执行了任务1task1
答因为xQueueReceive和xQueueSend函数如果读取完或写入完队列里面的数据自动会使任务由就绪态转变为阻塞态知道队列里面有数据可以写入或者读出
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback