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

做网站v1认证是什么意思怎么建设网站最便宜

做网站v1认证是什么意思,怎么建设网站最便宜,河南公司网站制作咨询,网页个人主页设计STM32 CubeMX Freertos STM32 CubeMX #xff08;Freertos任务#xff1a;创建、删除、挂起、恢复#xff09; STM32 CubeMX Freertos前言一、STM32 CubeMX 配置时钟树配置使能串口#xff0c;用于用于检查实验现象使用STM32 CubeMX 库#xff0c;配置Freertos创建任务 二…STM32 CubeMX Freertos STM32 CubeMX Freertos任务创建、删除、挂起、恢复 STM32 CubeMX Freertos前言一、STM32 CubeMX 配置时钟树配置使能串口用于用于检查实验现象使用STM32 CubeMX 库配置Freertos创建任务 二、实验一创建两个函数将LED闪烁实验现象使用 vTaskDelayUntil绝对延时 三实验二删除LED1任务和自身任务实验现象四实验三挂起和恢复实验现象总结 前言 学习使用Freertos第一步 FreeRTOS 任务管理您需要掌握以下几个关键函数 xTaskCreate()用于创建一个任务需要指定任务函数、任务名称、任务栈大小和优先级等参数。vTaskDelete()用于删除一个任务可以由任务自身或其他任务调用。vTaskDelay()用于使当前任务进入阻塞状态延迟一段时间后再继续执行。vTaskDelayUntil()类似于vTaskDelay()但是可以实现周期性的延迟使任务按照指定的时间间隔执行。vTaskSuspend()和vTaskResume()用于暂停和恢复一个任务的执行暂停后的任务将不会被调度执行。xTaskResumeFromISR()在中断服务程序中恢复一个被挂起暂停的任务。uxTaskPriorityGet()和vTaskPrioritySet()用于获取和设置任务的优先级。uxTaskGetStackHighWaterMark()用于获取任务栈的剩余可用空间大小可以用来检查任务是否使用了过多的栈空间。 一、STM32 CubeMX 配置 时钟树配置 使能串口用于用于检查实验现象 使用STM32 CubeMX 库配置Freertos 选择CMISS_V1接口就可以满足Freertos接口且代码量比CMISS_V2小 创建任务 二、实验一创建两个函数将LED闪烁 代码如下示例 void LED1Task(void const * argument) {/* USER CODE BEGIN LED1Task *//* Infinite loop */for(;;){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13,1);printf(LED灭\r\n); // printf输出字符串osDelay(1000);}/* USER CODE END LED1Task */ }/* USER CODE BEGIN Header_LED2Task */ /** * brief Function implementing the LED2 thread. * param argument: Not used * retval None */ /* USER CODE END Header_LED2Task */ void LED2Task(void const * argument) {/* USER CODE BEGIN LED2Task *//* Infinite loop */for(;;){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13,0);printf(LED亮\r\n); // printf输出字符串osDelay(2000);}/* USER CODE END LED2Task */ } 实验现象 使用 vTaskDelayUntil绝对延时 使能 vTaskDelayUntil函数 void LED1Task(void const * argument) {/* USER CODE BEGIN LED1Task */TickType_t xlaswketime;xlaswketime xTaskGetTickCount();//获取进入的时间/* Infinite loop */for(;;){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13,1);printf(LED灭\r\n); // printf输出字符串vTaskDelayUntil(xlaswketime,1000);}/* USER CODE END LED1Task */ }/* USER CODE BEGIN Header_LED2Task */ /** * brief Function implementing the LED2 thread. * param argument: Not used * retval None */ /* USER CODE END Header_LED2Task */ void LED2Task(void const * argument) {/* USER CODE BEGIN LED2Task */TickType_t xlaswketime;xlaswketime xTaskGetTickCount();//获取进入的时间/* Infinite loop */for(;;){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13,0);printf(LED亮\r\n); // printf输出字符串vTaskDelayUntil(xlaswketime,2000);}/* USER CODE END LED2Task */ }三实验二删除LED1任务和自身任务 /* USER CODE END Header_LED1Task */ void LED1Task(void const * argument) {/* USER CODE BEGIN LED1Task */TickType_t xlaswketime;xlaswketime xTaskGetTickCount();//获取进入的时间/* Infinite loop */for(;;){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13,1);vTaskDelayUntil(xlaswketime,500);HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13,0);vTaskDelayUntil(xlaswketime,500);}/* USER CODE END LED1Task */ }/* USER CODE BEGIN Header_LED2Task */ /** * brief Function implementing the LED2 thread. * param argument: Not used * retval None */ /* USER CODE END Header_LED2Task */ void LED2Task(void const * argument) {/* USER CODE BEGIN LED2Task */TickType_t xlaswketime;xlaswketime xTaskGetTickCount();//获取进入的时间printf(5s后删除LED1任务再5S删除自身任务\r\n); // printf输出字符串/* Infinite loop */for(;;){vTaskDelayUntil(xlaswketime,5000);//5秒vTaskDelete(LED1Handle);printf(删除LED闪烁任务\r\n); // printf输出字符串vTaskDelayUntil(xlaswketime,5000);//5秒printf(删除自身任务\r\n); // printf输出字符串vTaskDelete(NULL);printf(正常情况不会打印这段话\r\n); // printf输出字符串}/* USER CODE END LED2Task */ }实验现象 四实验三挂起和恢复 void LED1Task(void const * argument) {/* USER CODE BEGIN LED1Task */TickType_t xlaswketime;xlaswketime xTaskGetTickCount();//获取进入的时间/* Infinite loop */for(;;){HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13,1);vTaskDelayUntil(xlaswketime,500);HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13,0);vTaskDelayUntil(xlaswketime,500);}/* USER CODE END LED1Task */ }/* USER CODE BEGIN Header_LED2Task */ /** * brief Function implementing the LED2 thread. * param argument: Not used * retval None */ /* USER CODE END Header_LED2Task */ void LED2Task(void const * argument) {/* USER CODE BEGIN LED2Task */TickType_t xlaswketime;xlaswketime xTaskGetTickCount();//获取进入的时间printf(5s后暂停再5S恢复\r\n); // printf输出字符串/* Infinite loop */for(;;){vTaskDelayUntil(xlaswketime,5000);//5秒vTaskSuspend(LED1Handle);printf(暂停LED闪烁任务\r\n); // printf输出字符串vTaskDelayUntil(xlaswketime,5000);//5秒vTaskResume(LED1Handle);printf(恢复LED闪烁任务\r\n); // printf输出字符串}/* USER CODE END LED2Task */ }实验现象 总结 学会 任务管理 需要掌握并熟练任务的创建、删除、挂起、恢复和切换等操作以及任务的优先级和调度机制。
http://www.zqtcl.cn/news/994583/

相关文章:

  • 杭州微信网站开发网站优化公司免费咨询
  • 宣武富阳网站建设南昌公众号开发公司
  • 免费的网站推荐下载wordpress %s
  • 网站的原理百度旧版本下载
  • 衡水网站建设地方新网域名证书下载
  • 自己做的创意的网站什么是淘宝seo
  • 网站开发包含哪些网站设计实例
  • 网站建设 核算棋牌源码论坛
  • 杭州网站建设案例网页设计程序
  • 网站建设的相关问题湛江网站开发
  • 网站开发作业wordpress用户角色
  • 品牌网站制作建设微信小程序开发需要什么技术
  • 新网站注册国内食品行业网站开发
  • 太原微商网站建设网站里面的视频功能怎么做的
  • 绿色做环保网站的好处网易企业邮箱登录登录入口
  • 卯兔科技网站建设网站验收时项目建设总结报告
  • 触摸网站手机wordpress建立模板下载
  • 做暧在线观看网站网站建设与管理工资
  • 横岗网站建设无锡网站seo外包
  • 房管局 网站做房查学做网站推广要多久时间
  • 电脑网站开发者模式田园综合体建设网站
  • 南宁广告公司网站建设自适应网站建设模板
  • 做北京电梯招标的网站衡阳县专业做淘宝网站
  • 建设网站的语言wordpress主题自定义添加后台设置
  • 制造动漫网站开发目的四川酒店网站建设
  • 中国城市建设研究院深圳分院网站广西圣泰建设工程有限公司网站
  • 网站建设的方法有哪些内容wordpress展示插件
  • 北京手机网站制作公司wordpress 简易教程
  • 手机网站建站公司有哪些搜索引擎收录
  • 仿同程网 连锁酒店 网站模板学校网站建设用哪个系统