1. 只要输出的波形没有出现畸形,F407能够支持的频率都是支持的,支持TIM1到TIM4共14个定时器PWM配置,调用极其简单
且支持互补输出:
/*
可以输出到GPIO的TIM通道:
TIM1_CH1, PA8, PE9,
TIM1_CH2, PA9, PE11
TIM1_CH3, PA10, PE13
TIM1_CH4, PA11, PE14
TIM2_CH1, PA15 (仅限429,439) 407没有此脚
TIM2_CH2, PA1, PB3
TIM2_CH3, PA2, PB10
TIM2_CH4, PA3, PB11
TIM3_CH1, PA6, PB4, PC6
TIM3_CH2, PA7, PB5, PC7
TIM3_CH3, PB0, PC8
TIM3_CH4, PB1, PC9
TIM4_CH1, PB6, PD12
TIM4_CH2, PB7, PD13
TIM4_CH3, PB8, PD14
TIM4_CH4, PB9, PD15
TIM5_CH1, PA0, PH10
TIM5_CH2, PA1, PH11
TIM5_CH3, PA2, PH12
TIM5_CH4, PA3, PI10
TIM8_CH1, PC6, PI5
TIM8_CH2, PC7, PI6
TIM8_CH3, PC8, PI7
TIM8_CH4, PC9, PI2
TIM9_CH1, PA2, PE5
TIM9_CH2, PA3, PE6
TIM10_CH1, PB8, PF6
TIM11_CH1, PB9, PF7
TIM12_CH1, PB14, PH6
TIM12_CH2, PB15, PH9
TIM13_CH1, PA6, PF8
TIM14_CH1, PA7, PF9
APB1 定时器有 TIM2, TIM3 ,TIM4, TIM5, TIM6, TIM7, TIM12, TIM13, TIM14
APB2 定时器有 TIM1, TIM8 ,TIM9, TIM10, TIM11
APB1 定时器的输入时钟 TIMxCLK = SystemCoreClock / 2; 84M
APB2 定时器的输入时钟 TIMxCLK = SystemCoreClock; 168M
*/
2. 用户只需调用此函数即可:
正常输出:
互补输出:
3. 举例说明,比如:我们希望PA9引脚输出10KHz , 直接在主程序调用函数
bsp_SetTIMOutPWM(GPIOA, GPIO_Pin_9, TIM1, 2, 10000, 5000); 这里使用的是TIM1的CH2通道就这么简单。
===============================================================
基于V5板子的配套例子,为了简单方便起见,我们使用的是PB6引脚,TIM4的CH1通道进行输出10KHz:
示波器测试效果,测试频率10KHz:
=================================================
基于V5板子的例子下载:
V5-定时器PWM,支持TIM1-TIM14所有定时器通道.rar
(1.71 MB, 下载次数: 2111)
|