对于stm32的输入捕获的工作原理不是很清楚,以time2为例,是ch1和ch2属于一组,一个用于测周期数,一个用于测高电平的周期吗,请大家帮忙解释解释
加入我想测信号的周期和占空比,应该如何配置,我看了3.5的库的官方历程这是他配置time的部分
TIM_ICInitStructure.TIM_Channel = TIM_Channel_2;
TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Rising;
TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;
TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;
TIM_ICInitStructure.TIM_ICFilter = 0x0;
TIM_ICInit(TIM3, &TIM_ICInitStructure);
/* TIM enable counter */
TIM_Cmd(TIM3, ENABLE);
/* Enable the CC2 Interrupt Request */
TIM_ITConfig(TIM3, TIM_IT_CC2, ENABLE);
但是在网上找到一些程序
他多加上了这几句
TIM_PWMIConfig(TIM3, &TIM_ICInitStructure); //根据参数配置TIM外设信息 /* Select the TIM3 Input Trigger: TI2FP2 */
TIM_SelectInputTrigger(TIM3, TIM_TS_TI2FP2); //选择IC2为始终触发源
/* Select the slave Mode: Reset Mode */
TIM_SelectSlaveMode(TIM3, TIM_SlaveMode_Reset);//TIM从模式:触发信号的上升沿重新初始化计数器和触发寄存器的更新事件
/* Enable the Master/Slave Mode */
TIM_SelectMasterSlaveMode(TIM3, TIM_MasterSlaveMode_Enable); //启动定时器的被动触发
我参考了固件库,对于这几句不是很理解
请大家帮帮忙
此帖出自
小平头技术问答
单通道也可以,通道上升下降沿都捕获捕获到后复位计数,根据两次的数据算出来周期和占空比
一周热门 更多>