两组PWM都由系统时钟经寄存器分频后提供时钟,分频值1到65535。可分别单独设置。
PWMA图:
高级定时器PWM学习实践,在擎天柱开发板的P20、P21角输出互补脉冲。
从PWM结构图上看,预分频器前面的从模式控制、触发控制器、编码器接口,的设置暂时没明白,在KEIL中,只设置了预分频及后面。
void PWMA_Init(void) //PWMA的初始化
{
//1.时钟源选择这里不改,默认22.1184mhz
//2.时基单元选择
PWMA_PSCRH = 0; //1分频
PWMA_PSCRL = 0;
PWMA_ARRH= (u8)(PWM_ARR>>8);
PWMA_ARRL= (u8)(PWM_ARR);
PWMA_CCR1H= (u8)(PWM_CCR>>8);
PWMA_CCR1L= (u8)(PWM_CCR);
//3.输入输出的引脚配置
PWMA_ENO = 0X00; //使能PWM1n通道输出
PWMA_ENO |= 0X03;
PWMA_PS =0x00; //选择PWM1从P20引脚输出
PWMA_PS |= (2<<0);
//4.输入输出模式设置
PWMA_CCER1 = 0X00;
PWMA_CCMR1 = 0X68; //pwm模式1 配置置位输出
PWMA_CCER1 = 0x05; //开启输出比较通道
PWMA_BKR = 0X80; //使能主输出
PWMA_CR1 |= 0X01; //启动计数器
}
页:
1
[2]