#include <reg52.h>
sbit PWMOUT = P0^0;
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
unsigned char HighRH = 0;
unsigned char HighRL = 0;
unsigned char LowRH = 0;
unsigned char LowRL = 0;
void PWM_Delays(unsigned int x)
{
unsigned int q;
for(q=x;q>0;q--);
}
void main()
{
ENLED = 0; //使能獨立LED
ADDR3 = 1;
ADDR2 = 1;
ADDR1 = 1;
ADDR0 = 0;
while (1)
{
static unsigned int Num1=0;
static unsigned int Num2=500;
static bit bit1=0;
PWMOUT=1;
if(bit1==1)
{
if(Num1==0)
{
PWMOUT=0;
bit1=0;
}
Num1--;
Num2++;
}
PWM_Delays(Num1);
PWMOUT=0;
PWM_Delays(Num2);
if(bit1==0)
{
if(Num1==500)
{
unsigned int q,h;
PWMOUT=1;
for(h=60000;h>0;h--);
for(q=60000;q>0;q--);
bit1=1;
}
Num1++;
Num2--;
}
}
}
|