#define PORTA_DDR*(volatile uint8_t *)0X21
#define PORTA_DATA*(volatile uint8_t *)0X22
#define PORTB_DDR*(volatile uint8_t *)0X24
#define PORTB_DATA*(volatile uint8_t *)0X25
int main(){
PORTA_DDR=0XFF;
PORTB_DDR=0XFF;
volatile long i,j;
while(1){
PORTA_DATA=0X00;
for(i=0;i<=7;i+=4){
PORTA_DATA|=(1<<i);
PORTA_DATA|=(1<<i+1);
PORTA_DATA|=(1<<i+2);
PORTA_DATA|=(1<<i+3);
for(j=0;j<400000;j++){}
PORTA_DATA=0X00;
}
PORTB_DATA=0X00;
for(i=0;i<=7;i+=4){
PORTB_DATA|=(1<<i);
PORTB_DATA|=(1<<i+1);
PORTB_DATA|=(1<<i+2);
PORTB_DATA|=(1<<i+3);
for(j=0;j<400000;j++){}
PORTB_DATA=0X00;
}
PORTB_DATA=0X00;
for(i=7;i>=0;i-=4){
PORTB_DATA|=(1<<i);
PORTB_DATA|=(1<<i-1);
PORTB_DATA|=(1<<i-2);
PORTB_DATA|=(1<<i-3);
for(j=0;j<400000;j++){}
PORTB_DATA=0X00;
}
PORTA_DATA=0X00;
for(i=7;i>=0;i-=4){
PORTA_DATA|=(1<<i);
PORTA_DATA|=(1<<i-1);
PORTA_DATA|=(1<<i-2);
PORTA_DATA|=(1<<i-3);
for(j=0;j<400000;j++){}
PORTA_DATA=0X00;
}
}
}