热爱浪漫 发表于 2025-7-2 18:56

PIC12F675 CCP 模块 PWM 配置技巧

PIC12F675 的 PWM 占空比不准确?关键是 PR2 寄存器和 TMR2 预分频器的配合。以下是计算公式和配置代码:
// PWM频率 = Fosc / (4 * (PR2 + 1) * TMR2预分频比)
// 对于4MHz晶振,设PWM频率为5kHz:
// 5000 = 4000000 / (4 * (PR2 + 1) * 16) → PR2 = 124

void PWM_Init(void) {
    PR2 = 124;            // 设置周期寄存器
    CCP1CON = 0x0C;       // PWM模式,DC1B<1:0>=00
    CCPR1L = 62;          // 初始占空比50% (62/124)
    T2CON = 0x03;         // TMR2预分频比1:16,启用TMR2
}
页: [1]
查看完整版本: PIC12F675 CCP 模块 PWM 配置技巧