此程序的電路圖下載:http://www.zg4o1577.cn/f/ks51.pdf 只需要看led部分即可,其他部分可忽略掉.
#include <reg52.h>
typedef unsigned char uchar;
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
void main()
{
uchar cnt = 0;
uchar i =0;
uchar j =0;
uchar k =1;
ENLED = 0;
ADDR3 = 1;
ADDR0 = 0;
ADDR1 = 1;
ADDR2 = 1;
TMOD = 0x01;
TH0 = 0xB8;
TL0 = 0x00;
//12(65536-X)/11059200 =0.02
TR0 = 1;
while(1)
{
if(TF0 == 1)
{
TF0 = 0;
TH0 = 0xB8;
TL0 = 0x00;
i++;
}
if(50 == i)
{
i = 0;
if(j ==0)
{
P0 = ~(0x01<<cnt);
cnt++;
}
if(1 == j)
{
P0 = ~(0x80>>k);
k++;
}
if(8 == cnt)
{
cnt = 1;
j=1;
}
if(8 == k)
{
k = 1;
j=0;
}
}
}
}