#define Delay_ms (500)
#define Bitwiss (1)
#define PDPinMax (8)
#define PDPinMin (0)
char blink = 0;
void setup(void)
{
DDRD = 0XFF;
}
void loop(void)
{
blink = 0x01;
for(int i = PDPinMin; i<PDPinMax ;i++)
{
PORTD = blink;
delay(Delay_ms);
blink <<= Bitwiss;
}
blink = 0x40;
for(int i = PDPinMax; i>PDPinMin ;i--)
{
PORTD = blink;
delay(Delay_ms);
blink >>= Bitwiss;
}
char PortonD[PDPinMax] ={PORTD7,PORTD6,PORTD5,PORTD4,PORTD3,PORTD2,PORTD1,PORTD0};
for(int i = PDPinMin ;i<PDPinMax ;i++)
{
PORTD |= Bitwiss << PortonD[i];
delay(Delay_ms);
PORTD &= ~(Bitwiss << PortonD[i]);
}
}