第9章基础定时器_第1页
第9章基础定时器_第2页
第9章基础定时器_第3页
第9章基础定时器_第4页
第9章基础定时器_第5页
已阅读5页,还剩10页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

TIM简介TIM(Timer)定时器,定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断16位计数器、预分频器、自动重装寄存器的时基单元不仅具备基本的定时中断功能,而且还包含内外时钟源选择、输入捕获、输出比较、编码器接口、主从触发模式等多种功能STM32F103有2个高级控制定时器(Advanced-control

timer),4个通用定时器(General-purposetimer),2个基础定时器(Basictimer)。定时器特性定时器类型定时器计时器长度计数类型DMA请求捕获/比较通道所在总线基础TIM6、TIM716向上有0APB1通用TIM2、TIM3、TIM4、TIM516向上、向下、向上\向下有4APB1高级TIM1、TIM816向上、向下、向上\向下有4APB2基础定时器TIM6和TIM7是基础定时器,它们的功能相同只能使用内部时钟信号CK_INT16位自动重载寄存器(auto-reloadregister,ARR),16位递增计数器CNT,16位可编程预分频器(PSC),分频范围1至65536只有一种事件引起中断,即计数器上溢时产生的更新事件降低频率/(PSC+1)计数设置时钟周期周期=ARR+1时钟来源计数器工作时序计数器计数频率:CK_CNT

=CK_PSC

/(PSC

+1)计数器溢出频率:CK_CNT_OV=CK_CNT/(ARR

+1) =CK_PSC/(PSC

+1)/(ARR

+1)上计数、下计数和中心对齐上计数(CountUp)下计数(CountUp)中心对齐(CenterAlign)课堂练习将TIM3的时基单元设置为分辨率1us,周期1ms,PSC和ARR值怎么设置1us1ms寄存器预加载功能定时器运行过程中突然改变ARR寄存器预加载功能写入生效使能ARR的预加载功能基础定时器HAL库函数分组函数名功能描述初始化HAL_TIM_Base_Init()定时器初始化,设置各种参数和连续定时模式HAL_TIM_Base_MspInit()弱函数,在HAL_TIM_Base_Init()里被调用,需重新实现HAL_TIM_OnePulse_Init()将定时器配置为单次定时模式,需要先执行HAL_TIM_Base_Init()启动和停止HAL_TIM_Base_Start()以轮询工作方式启动定时器,不会产生中断HAL_TIM_Base_Stop()停止轮询工作方式的定时器HAL_TIM_Base_Start_IT()以中断工作方式启动定时器,发生UEV事件时产生中断HAL_TIM_Base_Stop_IT()停止中断工作方式定时器的HAL_TIM_Base_Start_DMA()以DMA工作方式启动定时器HAL_TIM_Base_Stop_DMA()停止DMA工作方式的定时器获取状态HAL_TIM_Base_GetState()获取基础定时器的当前状态其他通用的操作函数函数名功能描述__HAL_TIM_ENABLE()启用某个定时器,就是将定时器控制寄存器TIMx_CR1的CEN位置1__HAL_TIM_DISABLE()禁用某个定时器__HAL_TIM_GET_COUNTER()在运行时读取定时器的当前计数值,就是读取TIMx_CNT寄存器的值__HAL_TIM_SET_COUNTER()在运行时设置定时器的计数值,就是设置TIMx_CNT寄存器的值__HAL_TIM_GET_AUTORELOAD()在运行时读取自重载寄存器TIMx_ARR的值__HAL_TIM_SET_AUTORELOAD()在运行时设置自重载寄存器TIMx_ARR的值,并改变定时的周期__HAL_TIM_SET_PRESCALER()在运行时设置与分频系数,就是设置分频寄存器TIMx_PSC的值中断处理相关函数函数名功能描述__HAL_TIM_GET_FLAG()获取某个事件是否触发的标志,就是读取状态寄存器TIMx_SR中相应的中断事件位是否置1__HAL_TIM_GET_IT_SOURCE()判断是否是某个事件产生的中断,返回值为SET或

RESET__HAL_TIM_CLEAR_IT()清除某个事件的中断标志,就是将状态寄存器TIMx_SR中相应的中断事件位是否置0__HAL_TIM_ENABLE_IT()启用某个事件的中断,就是将中断使能寄存器TIMx_DIER中相应事件位置1__HAL_TIM_DISABLE_IT()禁用某个事件的中断,就是将中断使能寄存器TIMx_DIER中相应事件位置0HAL_TIM_IRQHandler()定时器ISR函数里的通用处理函数HAL_TIM_PeriodElapsedCallback()弱函数,UEV事件中断的回调函数基本定时器示例将TIM1配置为连续定时模式,定时周期设为1s,并通过中断方式启动TIM1,在更

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论