大家好,欢迎来到IT知识分享网。
在STM32超低功耗系列的STM32L4系列的MCU中,包含以下系列的芯片:
STM32L41xxx,L42xxx,L43xxx,L44xxx,L45xxx,L46xxx;
STM32L47xxx,L48xxx,L49xxx,L4Axxx。
这些芯片中具备2个基本定时器(Basic timers):TIM6和TIM7。
TIM6存在于上述所有系列芯片中。TIM7只存在于:L43xxx,L44xxx 这2个系列中。
TIM6和TIM7由可编程预分频器驱动的16位自动重载计数器组成。
其输入时钟源为PCLK1,PCLK1的来源如下图:

注意:当HCLK分频为PLCK1的分频系数=1时,输入TIM6和TIM7的时钟=PCLK1,
当HCLK分频为PLCK1的分频系数不等于1时,输入TIM6和TIM7的时钟=PCLK1*2。
在使用TIM6,TIM7之前需要将其时钟使能。
TIM6的时钟使能控制位:RCC_APB1ENR1[4].TIM6EN = 1
TIM7的时钟使能控制位:RCC_APB1ENR1[5].TIM7EN = 1
这2个定时器只可以增计数,当计数器的值从0增计数到自动重载值TIM6->ARR时产生中断。当重载值设置到TIM6->ARR后,会把这个值加载到影子寄存器里面,计数器的实时计数值是和影子寄存器的内容来比较的,当计数器的值达到影子寄存器的值时,会产生中断。
下面是TIM6产生1 ms中断的例子代码:
//----------------------------------------------------------------------------- // TIM6通用定时器 // // 时钟源: APB1-PCLK1 = 18.432MHz【80 MHz Max】 // // RCC_CFGR_PPRE1 的分频系数 = 1 时 CLK = APB1-PCLK1 // RCC_CFGR_PPRE1 的分频系数 != 1 时 CLK = APB1-PCLK1 * 2 //----------------------------------------------------------------------------- void TIM6_Init(void) { // 允许TIM6时钟 RCC->APB1ENR1 |= RCC_APB1ENR1_TIM6EN; // 清除:中断标志 TIM6->SR &= ~TIM_DIER_UIF; // 允许:中断 TIM6->DIER |= TIM_DIER_UIE; // 中断源:只有当计数器溢出时产生中断 TIM6->CR1 |= TIM_CR1_URS; // 计数器溢出时,允许将TIM6->ARR的值更新到影子寄存器 TIM6->CR1 &= ~TIM_CR1_UDIS; // 启用预加载:TIM6->ARR到影子寄存器 TIM6->CR1 |= TIM_CR1_ARPE; // 对输入时钟预分频,这里设输入时钟 = APB1-PCLK1 * 2 = 36.864 // 定时器的时钟 = 36.864 / (PSC+1) = 18.432 MHz TIM6->PSC = 1; // 计数值 = 18432,因为时钟是18.432 MHz,定时器增计数到18432产生中断,时间是1ms TIM6->ARR = 18432; // 启动TIM6计数器 TIM6->CR1 |= TIM_CR1_CEN; // 开TIM6中断 NVIC_EnableIRQ(TIM6_DAC_IRQn); } //----------------------------------------------------------------------------- // TIM6中断处理程序 // 中断时间 = 18432 / 18.432 MHz = 1ms //----------------------------------------------------------------------------- void TIM6_DAC_IRQHandler(void) { // 清除:中断标志 TIM6->SR &= ~TIM_DIER_UIF; // 此处可以添加自己的处理程序 // ... } /////////////////////////////////////////////////////////////////////////////////////////////// 2ms
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/177694.html