打印

16F877两路PWM

[复制链接]
3882|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xieweibiao|  楼主 | 2008-11-2 19:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
程序中我都设置好TRISC=0x00;PWM初试化为如下程序,怎么只有RC2有输出,而RC1没输出的啊?奇怪,麻烦高手指点一下!
PR2=0X52;
T2CON=0X01;
CCPR1L=0;
CCPR2L=0;
CCP1CON=0X3C;
CCP2CON=0X3C;
TMR2ON=1;
来自 2楼
庄庄| | 2008-11-19 13:37 | 只看该作者

送你一个PWM子程序吧

#include    <pic.h>
/********************************************************/
/* */
/*CCP1模块的PWM工作方式初始化子程序*/
/* */
/********************************************************/

void CCP1INIT(unsigned char index_PWM)
{
 CCPR1L=index_PWM&0X7F;
 CCP1CON=0x3C;                //设置CCP1模块为PWM工作方式,且其工作
                            //循环的低2位为11,高8位为01111111=7F
 //INTCON=0X00;                //禁止总中断和外围中断
 PR2=0X62;                    //设置PWM的工作周期100uS
 //TRISC=TRISC&0xFB;            //设置CCP1引脚为输出方式
 T2CON=0x04;    
}
/********************************************************/
/* */
/*CCP2模块的PWM工作方式初始化子程序*/
/* */
void CCP2INIT(unsigned char index_PWM)
{
 CCPR2L=index_PWM&0X7F;
 CCP2CON=0x3C;                //设置CCP1模块为PWM工作方式,且其工作
                            //循环的低2位为11,高8位为01111111=7F
 //INTCON=0X00;                //禁止总中断和外围中断
 PR2=0X62;                    //设置PWM的工作周期100uS
 //TRISC=TRISC&0xF9;            //设置CCP2引脚为输出方式
 T2CON=0x04;    
}

使用特权

评论回复
板凳
devil110| | 2009-1-18 16:17 | 只看该作者

呵呵

呵呵!

使用特权

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

本版积分规则

13

主题

33

帖子

1

粉丝