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

h5商城网站开发360网站名片怎么做

h5商城网站开发,360网站名片怎么做,做移动网站快速排名,软件外包公司的出路STM32 CubeMX STM32 CubeMX (第三步Freertos中断管理和软件定时) STM32 CubeMX一、STM32 CubeMX设置时钟配置HAL时基选择TIM1(不要选择滴答定时器;滴答定时器留给OS系统做时基)使用STM32 CubeMX 库,配置Fre…

STM32 CubeMX


STM32 CubeMX (第三步Freertos中断管理和软件定时)

  • STM32 CubeMX
  • 一、STM32 CubeMX设置
    • 时钟配置
    • HAL时基选择TIM1(不要选择滴答定时器;滴答定时器留给OS系统做时基)
    • 使用STM32 CubeMX 库,配置Freertos
    • 使能定时器,计时1s中断
    • 配置定时器中断优先级
  • 二、实验一,中断管理
    • 任务代码
    • 实验现象
  • 三,实验二:软件定时器
    • 初始化配置
    • 初始化代码
    • 任务代码
    • 实验现象


学习使用Freertos第三步
在 FreeRTOS 中,中断管理和软件定时:

  1. ·taskENTER_CRITICAL()·; 是一个函数在 FreeRTOS 中使用的,用于进入临界区(critical section)。在临界区内,中断会被禁用,这样可以确保在多任务环境下共享资源的安全性。你可以在需要保护共享资源的代码段中使用
  2. · taskENTER_CRITICAL()·; 来禁用中断,然后在临界区结束时使用 taskEXIT_CRITICAL();
    来重新启用中断。这样可以防止多个任务同时访问共享资源而导致的竞态条件。

一、STM32 CubeMX设置

时钟配置

在这里插入图片描述

HAL时基选择TIM1(不要选择滴答定时器;滴答定时器留给OS系统做时基)

在这里插入图片描述

使用STM32 CubeMX 库,配置Freertos

选择CMISS_V1接口就可以满足Freertos接口;且代码量比CMISS_V2小(CMISS_V2支持更多的RTOS接口,所以代码量比CMISS_V1多)
在这里插入图片描述

使能定时器,计时1s中断

在这里插入图片描述

配置定时器中断优先级

优先级(0~4)不归freertos管理
在这里插入图片描述

二、实验一,中断管理

  1. taskENTER_CRITICAL(); 是一个函数在 FreeRTOS 中使用的,用于进入临界区(critical section)。在临界区内,中断会被禁用,这样可以确保在多任务环境下共享资源的安全性。你可以在需要保护共享资源的代码段中使用
  2. taskENTER_CRITICAL(); 来禁用中断,然后在临界区结束时使用 taskEXIT_CRITICAL();
    来重新启用中断。这样可以防止多个任务同时访问共享资源而导致的竞态条件。
HAL_TIM_Base_Start_IT(&htim2);//使能
HAL_TIM_Base_Start_IT(&htim3);//使能
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{/* USER CODE BEGIN Callback 0 *//* USER CODE END Callback 0 */if (htim->Instance == TIM1) {HAL_IncTick();}/* USER CODE BEGIN Callback 1 */if (htim->Instance == TIM2) {printf("htim2\r\n");		// printf输出字符串}if (htim->Instance == TIM3) {printf("htim3\r\n");		// printf输出字符串}/* USER CODE END Callback 1 */
}

任务代码

void sendTask1(void const * argument)
{/* USER CODE BEGIN sendTask1 */BaseType_t xsatus;uint32_t buff=9600;/* Infinite loop */for(;;){HAL_Delay(5000);printf("关闭中断\r\n");		// printf输出字符串taskENTER_CRITICAL();//进入临界区,被管理的中断会被禁用HAL_Delay(5000);printf("打开中断\r\n");		// printf输出字符串taskEXIT_CRITICAL();//退出临界区}/* USER CODE END sendTask1 */
}

实验现象

在这里插入图片描述

三,实验二:软件定时器

初始化配置

在这里插入图片描述
在这里插入图片描述

初始化代码

  /* definition and creation of myTimer01 */osTimerDef(myTimer01, Callback01);myTimer01Handle = osTimerCreate(osTimer(myTimer01), osTimerPeriodic, NULL);/* definition and creation of myTimer02 */osTimerDef(myTimer02, Callback02);myTimer02Handle = osTimerCreate(osTimer(myTimer02), osTimerPeriodic, NULL);xTimerChangePeriod(myTimer01Handle,1000,100);xTimerChangePeriod(myTimer02Handle,1500,100);

任务代码

void sendTask1(void const * argument)
{/* USER CODE BEGIN sendTask1 */BaseType_t xsatus;uint32_t buff=9600;/* Infinite loop */for(;;){xTimerStart(myTimer01Handle,portMAX_DELAY);xTimerStart(myTimer02Handle,portMAX_DELAY);printf("打开中断\r\n");		// printf输出字符串osDelay(10000);xTimerStop(myTimer01Handle,portMAX_DELAY);xTimerStop(myTimer02Handle,portMAX_DELAY);printf("关闭中断\r\n");		// printf输出字符串osDelay(5000);}/* USER CODE END sendTask1 */
}

实验现象

在这里插入图片描述

http://www.yayakq.cn/news/706185/

相关文章:

  • 化妆品企业网站建设的缺点科技公司注册经营范围
  • 广州市网站建设制作江苏泰州海陵区建设局网站
  • 网站开发汇报ppt西安seo公司哪家好
  • 网站模板佳好乐云seowordpress idown主题
  • 浙江网站建设自助建站优化wordpress 评论框样式
  • 手机建个人网站产教融合平台建设网站
  • 怎么样自己做百度网站建站的好公司
  • 怎么为网站网页注册免费网址正规的培训学校
  • wordpress 仿站网站开发过程的分工
  • 手机上上建设网站dw织梦做网站
  • 做教学的视频网站wordpress音乐主题musik汉化
  • 广宏建设集团有限公司网站wordpress数据库有多大
  • 网站建设服务器介绍图片哪个好用?
  • 青海省高等级公路建设管局网站wordpress文章站
  • c sql网站开发直通车关键词优化口诀
  • 网站建设与维护的重要性最新新闻热点事件2023
  • 高要网站制作gooood谷德设计网站
  • 国内红酒网站建设推广公司简介
  • 贵州建设厅培训中心网站大丰做网站哪家最好
  • 深圳市住房和建设局网站住房什么是网络营销的概率
  • 手机端h5网站模板下载进入建设银行的网站就打不了字
  • 企业网站设计html平面设计平台接单
  • 什么叫网站app优惠券直播网站怎么做的
  • 东莞市生态环境局淘宝怎么优化关键词步骤
  • 高级ui设计是什么seo查询官方网站
  • DW做的网站加载慢搜索引擎推广的效果
  • 唐山论坛建站模板密云做网站
  • 上海浦东哪里有做网站的公司搜索网站有哪些
  • 沈阳人流费用seo百度点击软件
  • 怎么用源代码做网站代做网站和说明书