STM8L051单片机,PWM配置

STM8L051单片机,PWM配置。

文件.c 中代码如下所示

#include <MYPWM.h>
void MYPWM_Init(void)//PWM初始化
{
  GPIO_Init(GPIOB,GPIO_Pin_1,GPIO_Mode_Out_PP_High_Fast); //TIME3 ,CH1,PB1,快速推挽输出高电平
  TIM3_DeInit();//定时器配置为缺省
  CLK_PeripheralClockConfig(CLK_Peripheral_TIM3,ENABLE);      //TIME3时钟使能
  TIM3_TimeBaseInit(TIM3_Prescaler_8,TIM3_CounterMode_Up,100);//定时器时钟1MZ,PWM频率10KHZ
  TIM3_OC1Init(TIM3_OCMode_PWM1, TIM3_OutputState_Enable,50,TIM3_OCPolarity_High,TIM3_OCIdleState_Set); //占空比为50/100
  TIM3_OC1PreloadConfig(ENABLE);   //对于TIM3的CH1主输出使能
  TIM3_CtrlPWMOutputs(ENABLE);     //对于TIM3的PWM输出使能
  TIM3_ARRPreloadConfig(ENABLE);   //对于TIM3的预装载值使能
  TIM3_Cmd(ENABLE);   //开启定时器
}

文件.h 中代码如下所示

#ifndef __MYPWM_H
#define __MYPWM_H

#include "stm8l15x.h"
 
void MYPWM_Init(void);//PWM初始化

#endif

 

posted @ 2019-06-11 12:52  满月居于空717  阅读(35)  评论(0)    收藏  举报  来源