引用 张静茹:
改CMOD分频设置
#include <REG52.H>
#define uint unsigned int
#define uchar unsigned char
sfr CCON=0xD8;
sfr CMOD=0xD9;
sfr CL=0xE9;
sfr CH=0xF9;
sfr CCAP0L=0xEA;
sfr CCAP0H=0xFA;
sfr CCAP1L=0xEB;
sfr CCAP1H=0xFB;
sfr CCAP2L=0xEC;
sfr CCAP2H=0xFC;
sfr CCAP3L=0xED;
sfr CCAP3H=0xFD;
sfr CCAPM0=0xDA;
sfr CCAPM1=0xDB;
sfr CCAPM2=0xDC;
sfr CCAPM3=0xDD;
sfr PCAPWM0=0xf2;
sfr PCAPWM1=0xf3;
sfr PCAPWM2=0xf4;
sfr PCAPWM3=0xf5;
sbit CR=0xDE;
/************************************
函数名 : init_PWM
功能 : 初始化函数
输入参数 : 无
返回参数 : 无
*************************************/
void init_PWM()
{
CMOD=0x02;
CL=0x00;
CH=0x00;
CCAP0L=0x1a;
CCAP0H=0x1a;
CCAP1L=0x0d;
CCAP1H=0x0d;
CCAPM0=0x42;
CCAPM1=0x42;
CR=1;
}
/************************************
函数名 : main
功能 : 主函数
输入参数 : 无
返回参数 : 无
*************************************/
void main()
{
init_PWM();
TMOD = 0x01;
TH0 = 0x0B8;
TL0 = 0x00;
EA = 1;
ET0 = 1;
TR0 = 1;
while(1);
}