用PIC18F生成2个PWM波为什么示波器一点反应都没有呢?
都按着书看了好几遍了~求高人救我~好苦
#include<pic18f46k80.h>
#define uchar unsigned char
#define uint unsigned int
#define nop() asm("nop")
void init();
void PWMset1();
void PWMset2();
#pragma config XINST = OFF//使不能extended CPU
void main()
{
init();
PWMset1();
PWMset2();
while(1);
}
void init()// PWM 初始化
{
INTCON=0x00;
ADCON1=0X00;
PIE1=0;
PIE2=0;
PIE3=0;
PIE4=0;
PIE5=0;//关所有中断
}
void PWMset1()//2MHZ 输出 50%占空比 CCP3
{
TRISC6=0;//ccp3输出引脚rc6为输出状态
PR2=0;
CCPR3L=0;
CCP3CON=0X2C;
T2CON=0X05;
// PR2=0x00;//周期设定 1/2M=(PR2+1)*4*1/8M*分频比(1)
// CCPR3L=0x7F;
// CCP3CON=0x3C;//PWM模式
// T2CON=0x00;//设置前后分频比均为1
// CCP3IE=0;//CCP3关中断
}
void PWMset2()//8kHZ 输出 50%占空比 CCP4
{
TRISC7=0;//ccp4输出引脚rc7为输出状态
PR4=0xF9;//周期设定 1/8k=(PR2+1)*4*1/8M*分频比(1)
CCPR4L=0x7F;
CCP4CON=0x3C;//PWM模式
T4CON=0x04;//设置前后分频比均为1
CCPTMRS=0x08;//CCP4基于TMR4
CCP4IE=0;//CCP4关中断
}
|