примерно так:
CODE:
portstate=PIND;
for (i=0;i<8;i++)
{
if(portstate&0x80=0)
{ дела, которые нужно делать если в текущем бите 0}
else
{ дела, которые нужно делать если в текущем бите 1};
portstate=porrtstate<<1;
}
т.е. анализировать старший бит, сдвигать на 1 бит влево -старшим стал следующий....
есть варианты.
P.S. в АВРах я не разбираюсь (а в контроллерах вообще - есть немного). |