3050311118 发表于 2012-8-31 14:52:56

STC单片机PCA做16位定时器时,没有溢出中断啊?想做个16为PWM

STC单片机PCA做16位定时器时,没有溢出中断啊?想做个16位PWM

STC搞个高精度的PWM真麻烦

BXAK 发表于 2012-8-31 15:18:09

本帖最后由 BXAK 于 2012-8-31 15:36 编辑



BXAK 发表于 2012-8-31 15:39:48

像STC 15系列 还可以利用 16位自动重装定时器 + 定时器时钟输出 实现 8~16位PWM

3050311118 发表于 2012-8-31 15:54:51

BXAK 发表于 2012-8-31 15:18 static/image/common/back.gif


//PWM中断更新
void PCA_isr() interrupt 7 using 1
{
        static bit bool=0;
    CCF0 = 0;                     //Clear interrupt flag
        bool = !bool;
           if(bool)
           {
                        CCAP0L = 0xff;
                        CCAP0H = 0x3f;
                        PWM = 0;
           }
           else
           {
                        CL = 0;                         //Reset PCA base timer
                  CH = 0;
                  CCAP0L = pwmVal;
                        CCAP0H = pwmVal >> 8;            //Update compare value
                        PWM = 1;
           }
}


用这个方法解决了 呵呵   频率和脉宽都可调

cuikai12345 发表于 2012-8-31 16:18:29

谢谢学习了{:lol:}

cabbageybc 发表于 2013-6-19 21:23:32

BXAK 发表于 2012-8-31 15:18 static/image/common/back.gif


你好 我怎么在技术文档里面都没有找到 这个PWMn.c 这段呢 利用PCA扩展9-16位PWM技术文档找不到能否上传一份
页: [1]
查看完整版本: STC单片机PCA做16位定时器时,没有溢出中断啊?想做个16为PWM