打印

pic产生占空比变化的pwm

[复制链接]
3790|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ymx636|  楼主 | 2007-11-23 13:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问有用pic做过spwm或epwm的么?
    我看到下面这个占空比固定的pwm程序,里面禁止了总中断和外围中断,没有用到TMR2中断,没有任何关于TMR2IF的操作,觉得很奇怪阿,看了数据手册(16f886)我自己觉得应该要用到TMR2中断。
    我试了一下开中断进行ad采样,结果pwm就没有输出了。
    请教:1.pwm是否需要TMR2中断
          2.在产生pwm的同时可否进行ad中断
  
void CCP1INIT(void)
{
      CCPR1L=0X7F;
      CCP1CON=0X3C;      /*设置CCP1模块为PWM工作方式,且其工作                  /*循环的低2位为11,高8位为01111111=7F*/
      INTCON=0X00;          /*禁止总中断和外围中断*/
      PR2=0XFF;          /*设置PWM的工作周期*/
      TRISC=0XFB;         /*设置CCP1引脚为输出方式*/
}

/*主程序*/
void main(void)
{
    CCP1INIT();   /*CCP1模块的PWM工作方式初始化*/
     T2CON=0X04;   /*打开TMR2,且使其前分频为1,
             /*同时开始输出PWM波形*/
         do
    {
        ;
    }while(1);    /*系统开始输出PWM波形。如果系统是
             /*多任务的,则可以在此执行其它任务,而
             /*不会影响PWM波形的产生*/
}
沙发
chen3bing| | 2007-11-23 17:34 | 只看该作者

re

1.需要。
2.可以。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

12

帖子

1

粉丝