STM32乙個定時器同時捕獲4路PWM波

2021-08-01 18:28:19 字數 677 閱讀 8184

最近需要用航模遙控器控制遙控車,32微控制器做主控,需要用到4個通道即需要捕獲4路pwm波。如果用四個定時器來捕獲四路pwm波,就太浪費資源了。由於stm32微控制器的定時器資源有限,故設想用乙個定時器的4個通道同時捕獲四路pwm波。

由於接收機輸出的pwm波高電平最多就2ms,故可以讓4個通道輪流使用定時器捕獲pwm波

include "pwmin.h"

void tim2_2pwmin_init(u16 arr,u16 psc)

u16 pwm1=1,pwm2=2,pwm3=2,pwm4=3;

u8 t1=0,t2=0,t3=0,t4=0;

u8 f=1;

void tim2_irqhandler(void)

else }

else if(tsr&(1<<2))

else }

else if(tsr&(1<<3))

else }

else if(tsr&(1<<4))

else }

else if(tsr&(1<<0))

tim2->ccer|=1<<((f-1)*4);

tim2->cnt=0;

tim2->sr=0;

}

STM32定時器輸出 捕獲PWM

硬體 德飛萊stm32f407 功能 tim4 ch1 pb6輸出pwm,tim3 ch1 pc6捕獲高電平時間 include timer.h void tim4 pwm init void void tim3 cap init void tim3 ch1定時器獲取 u8 tim3 irq sta...

stm32關定時器 STM32定時器TIM3程式

include led.h include delay.h include key.h include sys.h include usart.h include timer.h stm32開發板實驗8 定時器中斷實驗 int main void delay init 延時函式初始化 nvic co...

stm32定時器pwm模式輸入捕獲

stm32中的定時器,除了tim6和tim7,其他定時器都有輸入捕獲功能。這種模式通常用在對輸入訊號頻率frequency 占空比duty 高低脈寬的計算中,具有很廣泛的用途。stm32的輸入捕獲,簡單的說就是通過檢測timx chx上的邊沿訊號,在邊沿訊號發生跳變 比如上公升沿 下降沿 的時候,將...