реклама на сайте
подробности

 
 
> AVR assembler задержки
photon_62
сообщение Jun 25 2010, 21:39
Сообщение #1





Группа: Участник
Сообщений: 4
Регистрация: 25-06-10
Пользователь №: 58 150



кто как делает задержки и как правильно и точно подсчитать время?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
x736C
сообщение Jun 25 2010, 22:33
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1 273
Регистрация: 3-03-06
Пользователь №: 14 942



Такие задержки нужно делать на таймере.

В общих чертах.
Необходимо правильно загрузить таймер. Если число вами жестко определено и в процессе работы не меняется, то расчет лучше делать средствами самой среды разработки, которая может посчитать необходимое для таймера число, как в приведенном мной примере.
Этим числом вы загружаете соответствующий регистр таймера, разрешаете счет, разрешаете прерывания. Таймер с определенной вами скоростью начинает отсчитывать определенное количество тактов, соответствующее нужному вам временному интервалу.
Время вызова обработчика прерывания относительно начала счета (или загрузки таймера, если счет в этот момент был уже активирован) совпадет с необходимым вам временным интервалом с точностью до разрешающей способности таймера, которая будет зависеть от частоты тактирования (fClk / Pre).

Сообщение отредактировал x736C - Jun 25 2010, 22:39
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jun 26 2010, 10:32
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(x736C @ Jun 26 2010, 01:33) *
Такие задержки нужно делать на таймере.
Не обязательно. Одну задержку, скажем, "после включения на секунду зажечь все светодиоды чтобы показать их рабоспособность", т.е. задержки, не требующие большой точности, вполне можно делать и циклом. Хоть секундные, хоть минутные.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 03:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01997 секунд с 7
ELECTRONIX ©2004-2016