Страница 1 из 1
attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 14:26:12
neid
Добрый день! Не подскажите код с задержкой в 5 минут, сделал delay_ms(300000); но по какой то причине только через минуту а не через пять начинает дальше выполняться алгоритм!
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 14:51:26
Gudd-Head
А что код? Берёте переменную (можно несколько), и в цикле (вложенных циклах) инкрементируете/декрементируете её (их).
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 14:56:37
Dr. Alex
Ну а не проще-ли, взять переменную и при переполнению счётчика, например 0.1с, увеличивать - дальше фантазия ваша)
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 15:00:05
ДMИTPИЙ
neid писал(а): сделал delay_ms(300000); но по какой то причине только через минуту а не через пять начинает дальше выполняться алгоритм!
Повторите delay_ms(300000);delay_ms(300000);delay_ms(300000);delay_ms(300000);delay_ms(300000); пять раз и будет вам пять минут.
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 15:02:50
Gudd-Head
Если хочется именно с использованием
delay_ms, посмотрите файл delay.h
Там должно быть нечно воде
Код: Выделить всё
The maximal possible delay is 262.14 ms / F_CPU in MHz.
В соответствии с хотелкой вызывайте delay_ms() нужное количество раз.
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 15:05:28
Dr. Alex
ДMИTPИЙ писал(а):
Повторите delay_ms(300000)пять раз
И ЗАГРУЗИМ ПРОЦ ПОЛНОСТЬЮ))))))))) Я всё-таки сторонник ПРЕРЫВАНИЯ!
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 15:12:15
Gudd-Head
В ТЗ чётко написано
сделать задержку в 5 мин програмно
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 15:17:34
Pink-Pank
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 15:27:37
Барсик
neid писал(а):но по какой то причине только через минуту а не через пять начинает дальше выполняться алгоритм!
Потому что у функции delay_ms аргумент типа unsigned int. Т.е число, большее 65535 в неё засовывать нельзя!
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 16:57:19
ARV
Dr. Alex писал(а):ДMИTPИЙ писал(а):
Повторите delay_ms(300000)пять раз
И ЗАГРУЗИМ ПРОЦ ПОЛНОСТЬЮ)))))))))
Требую законодательно ограничить загрузку проца на уровне обычного рабочего дня, т.е. 8 часов в сутки. Все должны иметь право на отдых!!!
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 17:03:53
neid
Барсик писал(а):neid писал(а):но по какой то причине только через минуту а не через пять начинает дальше выполняться алгоритм!
Потому что у функции delay_ms аргумент типа unsigned int. Т.е число, большее 65535 в неё засовывать нельзя!
ну теперь понятно, что к чему и почему примерно минута получается!
Re: attiny13 как сделать задержку в 5 мин програмно
Добавлено: Вт окт 14, 2014 17:06:59
neid
Уважаемые все спасибо за ответы, ограничусь циклом, что выше человек предлагал, более не требуется! ну и за одно будем прерывание по таймеру изучать, есть к чему рости!)