#include
#define uchar unsigned char
#define uint unsigned int //宏定义
#define ulint unsigned long int //宏定义
void delay(uint time);
void Timer_init();
void Timer0(unsigned long int us);
uint pwm_valu=500;
sbit dj=P1^0;
void main()
{
Timer_init();//定时器初始化
Timer0(31);//通过一个定时值进入定时循环
while(1)
{
pwm_valu=550; //
delay(2000);
pwm_valu=2500; //
delay(2000); //
pwm_valu=1000; //
delay(2000); //
pwm_valu=2000; //
delay(2000); //
pwm_valu=1500; //
delay(2000);
}
}
//软件延时
void delay(uint time)
{
uint i,j;
for(i=0;i<1000;i++)
for(j=0;j
TH0=valu>>8;
TL0=(valu<<8)>>8;
TR0 = 1;//T0开始工作
}
/*************************************
t0 中断 中断
*************************************/
void T0zd() interrupt 1
{
static uchar num=1;
switch(num) //
{
case 1:
{
dj=1;
Timer0(pwm_valu);//
} break;
case 2:
{
dj=0;//pwm1变低
Timer0(2500-pwm_valu);//
} break;
case 3:
{
Timer0(2500);//
} break;
case 4:
{
Timer0(2500);//
} break;
case 5:
{
Timer0(2500);//
} break;
case 6:
{
Timer0(2500);//
} break;
case 7:
{
Timer0(2500);//
} break;
case 8:
{
Timer0(2500);//
}break;
case 9:
{
Timer0(2500);//
num=0;
}break;
default:break;
}
num++;
}
本程序完整源码的下载地址:http://www.ruidan.com/bbs/dpj-20521-1.html
-电子元器件采购网(www.ruidan.com)是本土元器件目录分销商,采用“小批量、现货、样品”销售模式,致力于满足客户多型号、高质量、快速交付的采购需求。 自建高效智能仓储,拥有自营库存超过50,000种,提供一站式正品现货采购、个性化解决方案、选型替代等多元化服务。