本帖最后由 y306512180 于 2011-11-28 19:08 编辑
今天要用TIM1做PWM,但是发现一个奇怪的问题,产生多个PWM波形后会有一段低电平时间,如图所示;
程序代码如下:
void TIM1_Init(void)
{//定时器1初始化
CLK_PCKENR1|=0x80;//开启定时器1外设时钟
TIM1_EGR=0x01;//重新初始化TIM1
TIM1_EGR|=0x20;//重新初始化TIM1
TIM1_ARRH=0x00;//设定重装载值
TIM1_ARRL=254;
TIM1_PSCRH=0;//预分频
TIM1_PSCRL=9;
TIM1_CR1=0x01;//边沿对齐,向上计数
TIM1_RCR=0;
}
void TIM1_PWM_Init()
{
TIM1_CCER1=0x03;
TIM1_CCMR1=0x70;//PWM模式2
TIM1_CCR1H=0;//占空比
TIM1_CCR1L=10;
TIM1_BKR=0x80;
}
求解啊 |