Всем доброго времени суток.Сильно не пинайте я новенький и начинающий. с битовыми сдвигами вправо и влево я разобрался. А как например сделать сдвиг одновременно и вправо и влево? На примере 8 светодиодов я пробовал так.Алгоритм такой: от середины(0x10) по одному загораются светодиоды в разные стороны:
......... unsigned char temp;
temp=0x10; while(1){ { PORTB=temp; temp|=(temp<<1)|(temp>>1); _delay_ms(50); if(temp==0xff) temp=0x10; } } Вроде получилось но не совсем не горит 0 бит PORTB .Почему никак не пойму. Помогите !!!
Добавлено (16.05.2012, 19:52) --------------------------------------------- отвечаю сам себе переменную temp надо объявить как long а не char и в условии if (temp>0xFF) а не ==0xFF !!!!!