/********CYSY_Kiti1013***********/
void TIM4_PWM_Init(u16 arr,u16 psc)//PD12 PD13 PD14 PD15
{
RCC->APB1ENR|=1<<2;//使能TIM4
RCC->AHB1ENR|=1<<3;//使能GPIOD
GPIO_Set(GPIOD,PIN12,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_100M,GPIO_PUPD_PU);
GPIO_Set(GPIOD,PIN13,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_100M,GPIO_PUPD_PU);
GPIO_Set(GPIOD,PIN14,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_100M,GPIO_PUPD_PU);
GPIO_Set(GPIOD,PIN15,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_100M,GPIO_PUPD_PU);
GPIO_AF_Set(GPIOD,12,2);
GPIO_AF_Set(GPIOD,13,2);
GPIO_AF_Set(GPIOD,14,2);
GPIO_AF_Set(GPIOD,15,2);
TIM4->ARR=arr;
TIM4->PSC=psc;
TIM4->CCMR1|=6<<4;//PWM1 mode
TIM4->CCMR1|=6<<12;
TIM4->CCMR1|=1<<3;//CH1预装载使能
TIM4->CCMR1|=1<<10;//CH2
TIM4->CCMR2|=1<<3;//CH3
TIM4->CCMR2|=1<<10;//CH4
TIM4->CCMR2|=6<<4;
TIM4->CC
附上STM32F407 定时器四路PWM代码
最新推荐文章于 2024-08-09 09:37:26 发布
该代码段展示了如何初始化STM32F407定时器TIM4以实现四路PWM输出。通过设置GPIO模式、预分频器、自动重载寄存器等参数,确保了PWM通道1到4的正常工作。同时,详细配置了捕获比较寄存器以实现PWM模式并启用各通道。
摘要由CSDN通过智能技术生成