初级会员

- 积分
- 51
- 金钱
- 51
- 注册时间
- 2012-3-20
- 在线时间
- 4 小时
|
我用STM8输出PWM,用的是中央对齐方式,在CCRX小于ARP时,PWM输出完全正常,当CCRX的值=ARP时,并没有产生手册上说的高电压产生,而一直是低压.我的初始化程序大概如下。
CLK_CKDIVR=0x00 ;
//16M,不分频
CLK_PCKENR1|=0x80 ;
//开启定时器1外设时钟
TIM1_PSCRH=0x00 ;
//设定预分频
TIM1_ARRH=0x00 ;
TIM1_ARRL=0x50 ;
TIM1_CCMR3 = 0x60;
TIM1_CCMR2 = 0x60;
TIM1_CCMR1 = 0x60;
TIM1_CCER1|=0x11 ;
// CH1,CH2打开,高电平有效输出高;
TIM1_CCER2|=0x01 ;
// CH3打开,高电平有效输出高;
TIM1_SR1&=~0x1E ;
//清除比较中断标志
TIM1_BKR|=0x80 ;
//使能OC输出
TIM1_CR1=0x21 ;
TIM1_CCR3H=0;
TIM1_CCR3L=0x50 ;//当小时50时,PWM输出是完全正确的 |
|