njf_njf:
TH0=0xFE;//重装计数值 TL0=0x00; index++;//查表索引 if(index==100)//半周期转换,每半周期分为60份 { CR=0; //关PCA计数 index=0; zf=~zf; //半周期标志,zf=0,前半周期,zf=1,后半周期 if(zf) //设置后半周期 { // P13=0; CCAP0H=0xff; CCAPM0=0X00; //关闭模块0 CCAPM1=0X42; //设置模块1工作方式 } else //设置前半周期 { // P14=0; CCAP1H=0xff; CCAPM1=0X00; //关闭模块1 CCAPM0=0X42; //设置模块0工作方式 } CR=1; //开PCA计数 } if(zf==0) //将下一小格的占空比赋给相应值 { CCAP0H=pwm[index]; //CCAP1H=0; } else { CCAP1H=pwm[index];//CCAP0H=0; }