怎么PIC16F1827打开PWM功能在RA3上输出

2019-03-25 18:55发布

下面的代码能开启PWM吗?我试了好像不行

void initPWM()
{
INTCON = 0x00; //关闭总中断和外部中断
TRISA=0xFF;  //ADD BY CHEN
PR2 = 0xff;  //写入PR2寄存器设置PWM周期,PWM周期=[(PR2)+1]*4*TOSC*(TMR2预分频比)
CCP1CON = 0x3C;  //设置PWM占空比低2位为11,设置为PWM模式
CCPR1L = 0x00; //设置PWM占空比高8位
// TRISC = 0xfb;  //设置CCP1口为输出
// T2CON = 0x02;  //设置TMR2预分频为16;
        T2CON = 0x06;  //ADD BY CHEN 设置TMR2预分频为16并且打开TIMER2;
        TRISA=0;  //ADD BY CHEN
}

是否PWM功能要开中断?

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
8条回答
dingzy_2002
2019-03-26 02:59
本帖最后由 dingzy_2002 于 2016-12-16 14:55 编辑
and01 发表于 2016-12-16 13:54
我现在还是没正常开启PWM?帮忙看哪里出问题了?!
非常感谢

你的雾化输出频率,个人认为,采用PWM调节频率输出是不合适的(我也试过,包括其它开发人员测试不行,才将这个项目要我帮忙的,不过,要用PWM模块来作为固定脉宽的输出配置)
主要是频率的分辨率不够,PWM能做到从1.8~2.4M的50K~200KH步进调节吗?
否则极不容易找到最佳的中心谐振频率.

一周热门 更多>