#include <reg52.h>
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
unsigned char code A[] = {
0xFF,0x99,0x00,0x00,0x00,0x81,0xC3,0xE7
};
void main()
{
unsigned char i=0;
ENLED = 0;
ADDR3 = 0;
P0 = 0xFF;
switch(i)
{
case 0: ADDR2=0; ADDR1=0; ADDR0=0; i++; P0=A[0];break;
case 1: ADDR2=0; ADDR1=0; ADDR0=1; i++; P0=A[1];break;
case 2: ADDR2=0; ADDR1=1; ADDR0=0; i++; P0=A[2];break;
case 3: ADDR2=0; ADDR1=1; ADDR0=1; i++; P0=A[3];break;
case 4: ADDR2=1; ADDR1=0; ADDR0=0; i++; P0=A[4];break;
case 5: ADDR2=1; ADDR1=0; ADDR0=1; i++; P0=A[5];break;
case 6: ADDR2=1; ADDR1=1; ADDR0=0; i++; P0=A[6];break;
case 7: ADDR2=1; ADDR1=1; ADDR0=1; i=0; P0=A[7];break;
default: break;
}
}