Цитата(AHTOXA @ Dec 6 2010, 01:03)

А как вы узнали, что byte увеличивается во время подсчёта?
в отладчике рассмотрел.
2 Палыч: согласен. забыл выписать эту строчку из кода: в конце нужно добавить еще while ((PINB&0x04)==0) ;
а проблема решилась с помощью двух volatile.
все-таки это проделки оптимизатора. логики пока не вижу.
Цитата(skripach @ Dec 6 2010, 18:34)

Может таки таймер заюзать, а то как-то сурово.
можно и таймер подергать. но в данном случае нет необходимости измерять точную длину сигнала, достаточно выяснить больше она какого-то порога или меньше.
Сообщение отредактировал elusive - Dec 6 2010, 13:41