STM32高级定时器PWM简单使用201103272143转载自百合师最终编辑百合师
高级定时器与通用定时器比较类似,高级定时器与通用定时器比较类似,下面是一个TIM1的PWM程唯一的高级定时器。死区有互补。序TIM1是STM32唯一的高级定时器。共有4个通道有死区有互补。TIM1是STM32唯一的高级定时器共有4
先是配置IO脚:GPIO_I
itTypeDefGPIO_I
itStructurePA8设置为功能脚PWMGPIO_I
itStructureGPIO_Pi
GPIO_Pi
_8GPIO_I
itStructureGPIO_ModeGPIO_Mode_AF_PPGPIO_I
itStructureGPIO_SpeedGPIO_Speed_50MHzGPIO_I
itGPIOAGPIO_I
itStructurePB13设置为PWM的反极性输出GPIO_I
itStructureGPIO_Pi
GPIO_Pi
_13GPIO_I
itStructureGPIO_ModeGPIO_Mode_AF_PPGPIO_I
itStructureGPIO_SpeedGPIO_Speed_50MHzGPIO_I
itGPIOBGPIO_I
itStructure开时钟PWM的与GPIO的RCC_APB2PeriphClockCmdRCC_APB2Periph_TIM1ENABLERCC_APB2PeriphClockCmdRCC_APB2Periph_GPIOAENABLERCC_APB2PeriphClockCmdRCC_APB2Periph_GPIOBENABLE配置TIM1TIM_TimeBaseI
itTypeDefTIM_TimeBaseStructureTIM_OCI
itTypeDefTIM_OCI
itStructurevoidTim1_Co
figuratio
voidTIM_TimeBaseI
itTypeDefTIM_TimeBaseStructureTIM_OCI
itTypeDefTIM_OCI
itStructureTIM_DeI
itTIM1重设为缺省值TIM1时钟配置TIM_TimeBaseStructureTIM_Prescaler4000预分频时钟分频72M400018KTIM_TimeBaseStructureTIM_Cou
terModeTIM_Cou
terMode_Up向上计数TIM_TimeBaseStructureTIM_Period144装载值18k144125hz就是说向上加的144便满了TIM_TimeBaseStructureTIM_ClockDivisio
TIM_CKD_DIV1设置了时钟分割不懂得不管
fTIM_TimeBaseStructureTIM_Repetitio
Cou
ter0x0周期计数器值不懂得不管TIM_TimeBaseI
itTIM1TIM_TimeBaseStructure初始化TIMx的时间基数单位Cha
el1Co
figuratio
i
PWMmode通道一的PWMTIM_OCI
itStructureTIM_OCModeTIM_OCMode_PWM2PWM模式2TIM_OCI
itStructureTIM_OutputStateTIM_OutputState_E
able正向通道有效PA8TIM_OCI
itStructureTIM_OutputNStateTIM_OutputNState_E
able反向通道也有效PB13占空时间144中有40的时间为高,互补的输TIM_OCI
itStructureTIM_Pulse40出正好相反TIM_OCI
itStructureTIM_OCPolarityTIM_OCPolarity_Low输出极性TIM_OCI
itStructureTIM_OCNPolarityTIM_OCNPolarity_Low互补端的极性TIM_OCI
itStructureTIM_OCIdleStateTIM_OCIdleState_Reset空闲状态下的非工作状态不管TIM_OCI
itStructureTIM_OCNIdleStateTIM_OCIdleState_Reset先不管TIM_OC1I
itTIM1TIM_OCI
itStructure数初始化外设TIMx通道1这里20库为TIM_OCI
itTIM1cou
tere
able开定时器TIM_CmdTIM1ENABLETIM1Mai
OutputE
able使能TIM1外设的主输出TIM_CtrlPWMOutputsTIM1ENABLE设置捕获寄存器1voidSetT1Pwm1u16pulseTIM1CCR1pulse操作寄存器r