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

丰城建设网站乐清网站建设

丰城建设网站,乐清网站建设,郑州高端网站建设公司,亚马逊网站怎么做信号量相当于一个标志#xff0c;实现对资源多少的管理。 比如停车场空位的数量。 这里使用的是二值信号量#xff0c;其队列长度为1#xff0c;只有空或满两种状态。 1、步骤#xff1a; 1.1、创建信号量 1.2、释放信号量 1.3、获取信号量 注#xff1a;若想深入还…信号量相当于一个标志实现对资源多少的管理。 比如停车场空位的数量。 这里使用的是二值信号量其队列长度为1只有空或满两种状态。 1、步骤 1.1、创建信号量 1.2、释放信号量 1.3、获取信号量 注若想深入还需花大功夫目前目标争取会用 #include sys.h #include delay.h #include usart.h #include led.h #include FreeRTOS.h #include task.h #include sys.h #include semphr.h //添加信号量相关头文件 /**************************************************** STM32F103C8T6单片机freertos移植实验 作者KJX 时间2023-12-22 *****************************************************/ //优先级 #define START_TASK_PRIO 1 //堆栈大小 #define START_STK_SIZE 128 //任务函数 void start_task(void * pvParameters); //任务句柄 TaskHandle_t StartTask_Handler;//task1优先级 #define TASK1_TASK_PRIO 2 //task1堆栈大小 #define TASK1_STK_SIZE 128 //task1函数声明 void task1_task(void * pvParameters); //task1任务句柄 TaskHandle_t Task1Task_Handler;//task2优先级 #define TASK2_TASK_PRIO 3 //task2堆栈大小 #define TASK2_STK_SIZE 128 //task2函数声明 void task2_task(void * pvParameters); //task2任务句柄 TaskHandle_t Task2Task_Handler;QueueHandle_t semphore_handle;//信号量句柄int main(void) {NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);delay_init();uart_init(9600);LED_Init();LED00; semphore_handlexSemaphoreCreateBinary();//创建二值信号量if(semphore_handle ! NULL){printf(二值信号量创建成功\r\n);}xTaskCreate((TaskFunction_t ) start_task, //指向任务函数的指针必须为第一个(char * ) start_task, //任务名字(uint16_t ) START_STK_SIZE, //任务堆栈大小,字为单位(void * ) NULL, //传递给任务函数的参数(UBaseType_t ) START_TASK_PRIO,//任务优先级数值大则优先级大(TaskHandle_t * ) StartTask_Handler);//任务句柄控制块 vTaskStartScheduler();//开启任务调度 }//开始任务 //返回值为pdPASS则创建任务成功void start_task(void * pvParameters) {taskENTER_CRITICAL();//进入临界区创建任务完成后才开始执行优先级任务//创建Task1xTaskCreate((TaskFunction_t ) task1_task,(char * ) task1_task,(uint16_t ) TASK1_STK_SIZE,(void * ) NULL,(UBaseType_t ) TASK1_TASK_PRIO,(TaskHandle_t * ) Task1Task_Handler);//创建Task2xTaskCreate((TaskFunction_t ) task2_task,(char * ) task2_task,(uint16_t ) TASK2_STK_SIZE,(void * ) NULL,(UBaseType_t ) TASK2_TASK_PRIO,(TaskHandle_t * ) Task2Task_Handler);vTaskDelete(StartTask_Handler);//删除开始任务删除自身用NULLtaskEXIT_CRITICAL();//退出临界区 }//任务一获取二值信号量 void task1_task(void * pvParameters) { uint8_t key1;BaseType_t err; while(1){if(key1){if(semphore_handle ! NULL){err xSemaphoreGive(semphore_handle);printf(二值信号量释放成功\r\n);}else{printf(二值信号量释放失败\r\n);}}vTaskDelay(10);} }//任务二释放二值信号量 void task2_task(void * pvParameters) { uint32_t i0;while(1){xSemaphoreTake(semphore_handle,1000);//获取信号量并死等printf(获取信号量释放成功:%d\r\n,i);} }
http://www.pierceye.com/news/311646/

相关文章:

  • 水务 网站建设宁波建站模板系统
  • 方正集团网站是谁做的北京最新发布信息
  • iis7.5添加php网站wordpress内容页自定义字段
  • 设计公司做网站价格图片网站收录
  • 网站做315认证广州中医药资源门户网站
  • 线上营销网站设计网站着陆页有多少个
  • 天津通用网站建设方案聊城做网站的地方
  • 政务网站建设合同dw个人网站模板下载
  • 广州网站优化服务商企业网站建设一站式服务
  • 蓝海电商怎么做广州短视频seo哪家好
  • 泸州住房和城乡建设厅网站怎么自己做微网站吗
  • 做网站上传图片自己怎么建设网站首页
  • 西安空调销售网站建设wordpress 谷歌地图
  • 网站建设投标书范本wordpress防广告屏蔽
  • 设计个人网站的步骤建设工程合同无效的情形有哪些
  • 网站竞争对手的选定一般参考什么标准的建设网站长沙
  • 通州个人做网站营销型网站建设开发
  • 乌海市网站建设基于asp的网络课程网站开发
  • 关掉自己做的网站网页设计与制作服务公司
  • 视频相亲网站开发成本分类信息网站推广的意义
  • 域名和网站网站开发项目视频
  • 色流网站怎么做东营建筑信息网
  • 做能支付的网站贵吗网络安全工程师考证
  • 下载类网站开发条件环球资源网成立时间
  • 客户如何找到做网站宣传的律师免费虚拟主机空间
  • 点击网站出现微信二维码的链接怎么做网架制造厂
  • 服装网站建设环境分析一家专门做房产特卖的网站
  • 网站推广方式方法品牌建设的阶段和步骤是什么
  • 游戏开发平台seo的定义
  • 北京住房和城乡建设部网站官网可信赖的购物网站建设