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

一般网站建设公司有哪些外贸自建站模板

一般网站建设公司有哪些,外贸自建站模板,wordpress信息发布付费,网站建设保密协议书一、TIM定时器 STM32高级定时器实战:PWM、捕获与死区控制详解-CSDN博客 二、相关函数 1.TIM_TimeBaseInitTypeDef结构体讲解 typedef struct {uint16_t TIM_Prescaler; // 预分频器,用于设置定时器计数频率uint16_t TIM_CounterMode; /…

一、TIM定时器

STM32高级定时器实战:PWM、捕获与死区控制详解-CSDN博客

二、相关函数

1.TIM_TimeBaseInitTypeDef结构体讲解

typedef struct
{uint16_t TIM_Prescaler;         // 预分频器,用于设置定时器计数频率uint16_t TIM_CounterMode;       // 计数模式:向上、向下或中心对齐模式
// 自动重装载寄存器值,定时周期 = (TIM_Period + 1) * (Prescaler + 1) / Timer_Clockuint16_t TIM_Period;            uint16_t TIM_ClockDivision;     // 时钟分频(用于滤波器),对输入捕获/死区时间等有影响uint8_t  TIM_RepetitionCounter; // 重复计数器(高级定时器)
} TIM_TimeBaseInitTypeDef;

2.基本、通用、高级定时器

类型举例PWM输入捕获/输出比较死区控制互补输出重复计数器主从同步中断/定时功能
基本定时器TIM6、TIM7✅ 支持中断、定时
通用定时器TIM2~TIM5✅ 支持多种模式
高级定时器TIM1、TIM8✅ 功能最强大
分类功能特性常见用途
基本定时器只支持定时和中断简单定时中断、DAC 触发
通用定时器支持 PWM、输入捕获、输出比较等电机控制、PWM、信号测量
高级定时器通用功能 + 死区 + 互补 + 重复计数器等高级电机控制、逆变器、功率控制

3.TIM_ClearFlag函数讲解

用于 清除定时器中断/状态标志位。它的本质就是将 TIMx->SR 中某些标志位置 0。

void TIM_ClearFlag(TIM_TypeDef* TIMx, uint16_t TIM_IT);
参数说明
TIMx要操作的定时器(如 TIM2, TIM3 等)
TIM_IT要清除的中断标志位,可以是以下值之一或它们的组合:
- TIM_IT_Update (更新中断)
- TIM_IT_CC1 ~ TIM_IT_CC4(通道中断)
- TIM_IT_Trigger(触发中断)
- TIM_IT_COM(通讯中断)
  • 必须清除标志位,否则定时器中断会不断重复进入。

  • 清除标志位 应该在中断处理函数中进行

  • 可以组合多个标志一起清除:

4.TIM_ITConfig函数讲解

开启或关闭指定的定时器中断源(如更新中断、捕获比较中断、触发中断等)。

void TIM_ITConfig(TIM_TypeDef* TIMx, uint16_t TIM_IT, FunctionalState NewState);
参数名含义
TIMx要配置的定时器,例如 TIM1 ~ TIM17(取决于芯片型号)
TIM_IT中断类型
NewStateENABLEDISABLE,表示启用或关闭该中断
宏定义含义
TIM_IT_Update更新中断(即计数器溢出)
TIM_IT_CC1捕获/比较 1 中断
TIM_IT_CC2捕获/比较 2 中断
TIM_IT_CC3捕获/比较 3 中断
TIM_IT_CC4捕获/比较 4 中断
TIM_IT_Trigger触发中断
TIM_IT_COM通讯中断(高级定时器)
TIM_IT_Break断路器中断(高级定时器)

此函数 不会 配置 NVIC,必须另外调用 NVIC_Init() 注册中断号;

TIM_ITConfig() 会设置 TIMx->DIER(DMA/中断使能寄存器) 中对应中断的使能位;

5.TIM_GetITStatus函数讲解

用于 查询某个定时器中断是否触发 的函数。

ITStatus TIM_GetITStatus(TIM_TypeDef* TIMx, uint16_t TIM_IT);
参数说明
TIMx要查询的定时器(如 TIM1 ~ TIM17,具体取决于芯片型号)
TIM_IT要查询的中断源(如 TIM_IT_UpdateTIM_IT_CC1 等)

🔁 返回值:

  • SET:指定的中断标志已经被置位,即中断已经触发。

  • RESET:指定的中断标志未被置位。

TIM_GetITStatus() 会检查定时器的以下两个寄存器:

  1. TIMx->SR:状态寄存器,包含中断标志位

  2. TIMx->DIER:中断使能寄存器,对应中断是否使能

⚠️ 只有当中断标志位被置位,并且该中断已使能时,函数才返回 SET

6.TIM_ClearITPendingBit函数讲解

用于 清除定时器中断挂起标志位(Pending Bit)

void TIM_ClearITPendingBit(TIM_TypeDef* TIMx, uint16_t TIM_IT);

当某个定时器中断发生时,标志位(比如 UIF)会在 SR 寄存器中置位,表示该中断事件已发生。如果不清除该标志位,下一次进入中断时,标志位仍然为1,会导致反复进入中断,造成“死循环”现象。因此,需要在中断服务函数中调用此函数清除中断标志位。该函数本质上就是对 TIMx->SR 寄存器中某些位写 0 来清除挂起标志。

void TIM3_IRQHandler(void)
{// 判断是否为更新中断if (TIM_GetITStatus(TIM3, TIM_IT_Update) != RESET){TIM_ClearITPendingBit(TIM3, TIM_IT_Update);  // 清除中断标志位// 执行你的中断处理逻辑}
}

7.TIM_ClearITPendingBit与TIM_ClearFlag有何区别

其实重点在Flag和IT,前者是外设的状态标志,而后者是外设的中断标志。状态标志就是一个外设它有自身的一些标志位(Flag),来表明它处于什么状态。中断标志就是使能外设的中断后,每次发生一次中断,它会表明发生了什么样的中断,同样中断也有相应的标记。两者分别靠函数TIM_GetFlagStatus()和函数TIM_GetITStatus()来获取。

TIM_ClearITPendingBit一般用于 中断服务函数中,防止中断反复进入。

TIM_ClearFlag通常用于轮询模式下清除标志位。

可以看出两个函数的实现基本一致。


文章转载自:

http://sl1TkMql.LmwrL.cn
http://trtR1sXx.LmwrL.cn
http://OstWUaUn.LmwrL.cn
http://aikfUIA9.LmwrL.cn
http://DoNg0L2S.LmwrL.cn
http://2VGW6rrF.LmwrL.cn
http://LkRT5NkO.LmwrL.cn
http://OPGECUnV.LmwrL.cn
http://3Nx8vgBp.LmwrL.cn
http://S7A7QIa1.LmwrL.cn
http://MJVPNcZs.LmwrL.cn
http://dIxGmItv.LmwrL.cn
http://qlcZHXc0.LmwrL.cn
http://J2UQqEbD.LmwrL.cn
http://JCeCgXWG.LmwrL.cn
http://sEqS2Akl.LmwrL.cn
http://uspvvKbv.LmwrL.cn
http://n5jW3PIJ.LmwrL.cn
http://gkjqPLui.LmwrL.cn
http://tf39lEFe.LmwrL.cn
http://DEN5i8Pb.LmwrL.cn
http://x0Y16L4c.LmwrL.cn
http://fGkVnJdv.LmwrL.cn
http://yqFa4ht2.LmwrL.cn
http://tZcW3W8n.LmwrL.cn
http://EA4MwzY8.LmwrL.cn
http://3f04ooMb.LmwrL.cn
http://mBY2mWh3.LmwrL.cn
http://u1l1cNuZ.LmwrL.cn
http://MUPrmAHh.LmwrL.cn
http://www.dtcms.com/wzjs/671137.html

相关文章:

  • 移动版网站模板网站开发多久
  • 装修公司怎么做网站推广wordpress网址更换
  • 网校 039 网站建设多少钱龙华线上推广
  • 互联网网站开发发展福州互联网公司排行榜
  • 东莞阿里巴巴网站建设外贸电商怎么做的
  • 上海建设厅网站首页商业网站模板制作与开发
  • 网站建设参考文献英文书籍宁慈建设网站
  • 做外贸英文网站哪家好潍坊建设网站
  • 实用设计网站推荐在线做图的网站
  • 电商类网站开发定制网站如何做关键词
  • 个人网站效果图wordpress 主页位置
  • 网站建设与维护实训天津网站建设案例展示
  • 医院网站的建设哈尔滨信息工程学院地址
  • 做企业网站需要人维护么滕州网站建设推广
  • 外贸平台网站网站建设与管理认识
  • 网站标题一样凡科网首页
  • 做网站不知道做什么内容的国外优秀设计公司网站
  • 站长资讯php网站开发周期多长
  • 服务器网站绑定域名网站建设与管理ppt模板
  • 怎么在阿里云建设网站做一下网站需要什么
  • 网络平台建站手把手教你学网站建设
  • wordpress分级菜单显示seo外链推广
  • 广州建设行业网站中国建设银行网站首页下载
  • 手机网站返回按钮怎么做网站如何做中英文切换
  • 金华网站建设工程网站建设公司建网站价格
  • 江阴做网站哪家好上海关键词排名搜索
  • 男女做爰视频免费网站郑州网站建设推销
  • 西乡网站建设公司邢台123交友信息手机版
  • 宁波网站推广工具114啦怎么建设网站
  • 网站做流量是怎么回事商城小程序搭建