#include<avr/io.h>
int main(void)
{
volatile int iCnt;
volatile int iCnt1;
volatile int iCnt2;
DDRD = 0xff; // PD0~PD7번 핀을 출력핀으로 초기화
PORTD = 0xfe; // 첫번째 LED ON
while(1)
{
for(iCnt=0;7>iCnt;iCnt++)
{
for(iCnt1=0; 700>iCnt1; iCnt1++)
for(iCnt2=0;100>iCnt2;iCnt2++);
// 왼쪽으로 비트를 1씩 이동하면서 채워지는 0에 1을 대입
PORTD = (PORTD<<1)+1; // LED가 OFF되면서 오른쪽의 램프 ON
}
for(iCnt=0;7>iCnt;iCnt++)
{
for(iCnt1=0; 700>iCnt1; iCnt1++)
for(iCnt2=0;100>iCnt2;iCnt2++);
//오른쪽으로 비트를 1씩 이동하면서 채워지는 0에 1을 대입
PORTD = (PORTD>>1)+128; // LED가 OFF되면서 왼쪽의 램프 ON
}
}
return 0;
}