STM32定时器使用(三)外部脉冲计数

电机脉冲编码器的读取应用,可以测电机转速和位移。外部脉冲计数的原理是定时器1设定外部触发,另一个定时器2内部单位时间定时功能,在定时器2的中断函数里,去取定时器1的计数器,然后将定时器1计数器归零,这里取得的计数器值就是在单位时间内捕获的脉冲数。

频率: f = CNT1 / time2;

这里只配置定时器1外部触发模式,定时器2的定时功能在之前的写过,可以去参考;

这里的定时器1要进行引脚输入功能,使用通用定时器TIM2,而纯定时功能的定时器2我们用基本定时器TIM6

配置通用定时器TIM2

void TIM2_Cap_Init(void)                                        //配置 TIM2_CH1_ETR 为外部脉冲计数
{
       
    GPIO_InitTypeDef GPIO_InitStructure;
    TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
 
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);    //使能TIM2时钟
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE)
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值