STM32 通用T2、T3、T4、T5定时器详解
2016-09-19 11:12
309 查看
定时器初始化配置
NVIC配置
正常情况下是先配置好定时器参数设置,再配置NVIC中断-》使能中断。
void TIM3_Configuration(void)//1MS { TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_DeInit(TIM3);//开一下时钟再关闭 /* 设置TIM2CLK 为 72MHZ */ RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3 , ENABLE); /* 自动重装载寄存器周期的值(计数值) */ TIM_TimeBaseStructure.TIM_Period=1000-1; /* 累计 TIM_Period个频率后产生一个更新或者中断 */ TIM_TimeBaseStructure.TIM_Prescaler= 71; TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;/* 时钟预分频数为72 */ TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up; TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); TIM_ClearFlag(TIM3, TIM_FLAG_Update); TIM_ITConfig(TIM3,TIM_IT_Update,ENABLE); TIM_ARRPreloadConfig(TIM3, ENABLE); TIM_Cmd(TIM3, ENABLE); }
NVIC配置
void TIM3_NVIC_Configuration(void) { NVIC_InitTypeDef NVIC_InitStructure; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 3; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); }
正常情况下是先配置好定时器参数设置,再配置NVIC中断-》使能中断。
相关文章推荐
- 【STM库应用】stm32 之 TIM (详解一 通用定时器)
- STM32-通用定时器基本定时功能
- STM32 通用定时器
- STM32通用定时器---基本定时学习
- STM32之通用定时器
- stm32通用定时器
- STM32的学习心得之TIMx(通用定时器)基本的配置
- stm32通用定时器配置
- STM32----高级定时器、通用定时器(TIMx)、基本定时器(TIM6和TIM7)的区别
- STM32----高级定时器、通用定时器(TIMx)、基本定时器(TIM6和TIM7)的区别
- stm32之通用定时器TIM
- (转)STM32学习笔记(5):通用定时器PWM输出
- STM32学习笔记(5):通用定时器PWM输出
- STM32 通用定时器
- STM32之通用定时器
- stm32 通用定时器
- T1,T2,T3,T4带宽标准
- STM32通用定时器的PWM
- stm32通用定时器
- stm32通用定时器用做外部脉冲计数器的例程