Цитата(domowoj @ Apr 20 2008, 14:52)

Если во время задержки процессор ни чем больше не занят, то
лучше всего в п/п задержки делать просто декремент определенного числа,
соответствующ. нужной задержке.
Если уж применяете таймер, то Есть реж. CTC и регистры OCR1x.
Запускаете таймер, в регистр OCR1 - нужное число , "засыпаете" и по прерыванию
от таймера выходите из реж. спячки. Программа короче, а такты выхода из sleep можно учесть.
Или не "засыпаете" , а занимаетесь чем-либо еще.
AVRStudio считает время вып. программы.
Просто я хотел сделать что-то универсальное. Т.к. Пишу программу опроса датчиков по 1-Wire, а там разные задежки (15,1,480, 120 и т.д.). Вопрос возник из за того, что после посылки RESET нет PRESENCE. Пишу в AVRStudio, а опрос датчиков симулирую в Proteus`е. Из Ваших ответо воидно, что дело не в задержке..... Спасибо!
Более полный код выглядит так:
Код
.org 0
rjmp init
.org $008 ;Overflow1 Interrupt Vector
rjmp Tim0int
........
ldi r16,4
out TIMSK, r16
...........
ldi r17,$F8
ldi r16, $7F
call delay
delay:
.............
Tim0int:
..........
Сообщение отредактировал hooky-mars - Apr 20 2008, 12:07