51单片机PWM调光程序无法正常运行

无法调光,刚刚了解PWM,不是太清楚原理。
代码如下:
/************定义声明区*****************/

#include "reg52.h"

void delay10ms(void);

sbit led=P1^0;
sbit key=P3^3;
unsigned int zk=20;

/***************主函数*************/

void main()
{
led=1;
EA=1;
/****定时器配置***/
TMOD=0x01;
TL0=0x9c;
TH0=0xff;
ET0=1;
TR0=1;
/***外部中断配置**/
IT1=0;
EX1=1;
/***死循环***/
while(1);

}

void timer() interrupt 1
{
if(led==0)
{
led=1;
TL0=(65536-zk)%256;
TH0=(65536-zk)/256;
}
else
{
led=0;
TL0=(65536-(100-zk))%256;
TH0=(65536-(100-zk))/256;
}
}

void zd() interrupt 2
{
delay10ms();
if(key==0)
{
zk=zk+20;
if(zk>100)
{
zk=20;
}
}
while(!key);
}

void delay10ms(void) //误差 0us
{
unsigned char a,b,c;
for(c=5;c>0;c--)
for(b=4;b>0;b--)
for(a=248;a>0;a--);
}

第1个回答  2015-10-01
那你怎么知道没有正常运行,怎么验证的追问

烧入单片机,上电,按下中断按键,灯的亮度没有变化

相似回答
大家正在搜