码迷,mamicode.com
首页 > 其他好文 > 详细

STM32.定时器

时间:2014-11-20 15:28:01      阅读:342      评论:0      收藏:0      [点我收藏+]

标签:stm32   定时器   pwm输出   占空比   

一.定时器分类

11个定时器:

定时器:

1、8      高级(7路PWM输出)

2、3、4、5  通用(4路)

6、7        基本


2个看门狗

1个sysTick

bubuko.com,布布扣


时钟分布:

bubuko.com,布布扣


二.这里我们主要对定时器中 定时时间的安排以及几路PWM的输出配置

1,时间安排

bubuko.com,布布扣

当计数器达到自动重装载寄存器值 就会发生中断。

2.TIM2_Configuration(void)

其中的这两句

/* 自动重装载寄存器周期的值(计数值)*/
TIM_TimeBaseStructure.TIM_Period=1000;

/*时钟预分频数为71+1*/
TIM_TimeBaseStructure.TIM_Prescaler= 71;

故定时器溢出时间为:

TIM_Period / Auto Reload Register(ARR) = 1000   TIM_Prescaler--71 

TIM_Period = 1 / (72MHz/72)

故中断时间:1 / (72MHz/72)*1000 = 1ms

3.输出方波(输出比较)

TIMxCLK/CK_PSC --> TIMxCNT --> TIMx_ARR --> TIMxCNT 重新计数

            (计数寄存器)

            TIMx_CCR(电平发生跳变)

TIMxCNT = TIMx_CCR //当两个寄存器的值相等的时候电平发生跳变

TIMx_CCR:自动重装载寄存器的值:

TIM_TimeBaseStructure.TIM_Period = 999;

CK_PSC分频:

 TIM_TimeBaseStructure.TIM_Prescaler = 0;


②信号周期=(TIMx_ARR +1 ) * 时钟周期

③占空比=TIMx_CCR/(TIMx_ARR +1)

  TIM_OCInitStructure.TIM_Pulse = CCR1_Val;

同一个定时器,输出4路PWM波形,频率不可不同,波特率可不同;

在使用KEIL自带的仿真的时候,

bubuko.com,布布扣

Use Simulator


STM32.定时器

标签:stm32   定时器   pwm输出   占空比   

原文地址:http://blog.csdn.net/cpj_phone/article/details/41311731

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!