//P1^0输出PWM为70%,F为100HZ的方波
// 方波为100HZ,一个周期为10ms,PWM为70%那么置高周期为7ms,置低为3ms。
//假设为12MHz晶振 100hz,设置1ms为最小周期
#include
#define uchar unsigned char
uchar t;
sbit P10=P1^0;
void init()
{
TMOD=0x21;
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
ET0=1;
TR0=1;
EA=1;
}
void time0() interrupt 1
{
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
t++; //t为1ms
if(t==10) t=0;
}
void main()
{
init();
while(1)
{
if(t<7)P10=1;
else P10=0;
}
}