请教PWMA4N 4P(P26,P27)可以单独输出不同频率不同占空比的波形吗|已清楚
如题:硬件板子已经做了 是通过端口P26 , PWMA4P和端口P27 PWMA4N。原本是通过这两个端口分别输出不同频率和占空比的波形。
但是现在我程序频率和占空比没办法单独设置。两个端口输出一直是同步。
如果共同使用PWMA定时器。频率只能一样。那么占空比是否可以单独调节?
看使用手册 云里雾里搞不清楚。
高手指导一下。
void PWMA_config(void)
{
P_SW2 |= 0x80; //SFR enable
PWMA_ENO = 0; // IO输出禁止
PWMA_IER = 0; // 禁止中断
PWMA_SR1 = 0; // 清除状态
PWMA_SR2 = 0; // 清除状态
PWMA_PSCRH = 0x00; // 预分频寄存器, 分频 Fck_cnt = Fck_psc/(PSCR[15:0}+1), 边沿对齐PWM频率 = SYSclk/((PSCR+1)*(AAR+1)), 中央对齐PWM频率 // = SYSclk/((PSCR+1)*(AAR+1)*2).
PWMA_PSCRL = 0x00;
PWMA_ARRH= 2400/256; // 自动重装载寄存器,控制PWM周期
PWMA_ARRL= 2400%256;
PWMA_CCMR4= 0x68; // 通道模式配置, PWM模式1, 预装载允许
PWMA_CCR4H= 1600/256; // 比较值, 控制占空比(高电平时钟数)
PWMA_CCR4L= 1600%256;
PWMA_CCER1= 0x00; // 捕获/比较使能寄存器1
PWMA_CCER2|= 0x50; // 捕获/比较使能寄存器2
PWMA_PS = |= (1<<6); // 选择IO
PWMA_IER = 0; //设置允许通道1~4中断处理
PWMA_BKR = 0x80; // 主输出使能 相当于总开关
PWMA_CR1 = 0x81; // 使能计数器, 允许自动重装载寄存器缓冲, 边沿对齐模式, 向上计数,
PWMA_EGR = 0x01; //产生一次更新事件, 清除计数器和预分频计数器, 装载预分频寄存器的值
PWMA_ENO =|= 0xc0; // 允许IO输出
}
搞清楚了
当使用第一组PWM定时器输出PWM波形时,可单独使能PWM1P/PWM2P/PWM3P/PWM4P输出(称为P端输出),也可单独使能PWM1N/PWM2N/PWM3N/PWM4N输出(称为N端输出)。
P端输出和对应的N端输出不能同时独立输出。例如,若单独使能了PWM1P输出,则PWM1N就不能再独立输出,除非PWM1P和PWM1N组成一组互补对称输出
看来线路板要改动了
页:
[1]