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

 
 
> Таймер, Непонятно, как можно так писать?
T&D
сообщение Jan 31 2007, 14:27
Сообщение #1





Группа: Новичок
Сообщений: 8
Регистрация: 31-01-07
Пользователь №: 24 905



Вот фрагмент кода

TimeLoop:
out TCNT0, temp ;Сохраняем содержимое регистра таймера счетчика в temp
cp temp, 80 ; Сравниваем это содержимое с 80
brne TimeLoop ; Если не равно, то возвращаемся к началу цикла


Вот мне непонятна одна вещь:
каждая команда выполняется за один такт (какие-то команды могут выполняться за 2 такта).
Один такт и в регистре таймера счетчика оказывается 1 (предполагается, что делитель частоты не используется).
Следоваетльно в цикле описанном выше можно проскочить момент, когда в регистре таймера счетчика будет 80. Может, я что-то неправильно здесь понимаю?
Конечно, по мне гораздо удобнее воспользоваться прерываниями.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Wild007
сообщение Jan 31 2007, 16:57
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 226
Регистрация: 25-03-05
Из: Беларусь
Пользователь №: 3 672



Цитата
PS остерегайтесь вводных курсов, читайте серьёзные книги сразу.

К сожалению, новичёк всегда начинает с "вводных курсов", потом приходит на такой форум как наш где и понимает, что прочитанное ранее надо забыть и читать только "серьёзные книги" . smile.gif


--------------------
Ничто так не ограничивает полет мысли программиста, как компилятор
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 31 2007, 18:59
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Wild007 @ Jan 31 2007, 15:57) *
потом приходит на такой форум как наш где и понимает, что прочитанное ранее надо забыть и читать только "серьёзные книги" . smile.gif

Или не понимает sad.gif он уже сделал "кучу проектов" с мигающими лампадами, нажимающимися кнопками и даже играющей музыкой. Они работают что еще надо?
В одном старинном класическом труде было написано:
Цитата
Я мог написать непобедимую программу игры
в крестики-нолики в трехмерном пространстве на пяти различных
языках программирования, а также написать программу, состоящую
из 1000 строк, которая бы работала. Затем я попал в реальный
мир. Моей первой задачей было прочитать и понять программу емкостью 200000 строк, а затем увеличить скорость ее работы в 2 раза.

Иногда попадание в "реальный мир" помогает smile.gif, но и заповедных мест (где еще достаточно программ в сотни строк с единственным критерием "работает") в ембеддерстве еще хватает.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- T&D   Таймер   Jan 31 2007, 14:27
- - Wild007   ЦитатаНепонятно, как можно так писать? А ...   Jan 31 2007, 14:39
- - prottoss   Цитата(T&D @ Jan 31 2007, 18:27) out ...   Jan 31 2007, 14:40
|- - T&D   Цитата(prottoss @ Jan 31 2007, 14:40) Цит...   Jan 31 2007, 14:52
- - Wild007   ЦитатаЕсть вероятность, что мы при таком написании...   Jan 31 2007, 15:06
- - add   Да...уф.. Задача собственно несовсем понятна, даже...   Jan 31 2007, 15:10
|- - T&D   Цитата(add @ Jan 31 2007, 15:10) Да...уф....   Jan 31 2007, 15:23
- - add   ЦитатаЭтот пример не мной придуман, он взят из кни...   Jan 31 2007, 15:27
|- - T&D   Цитата(add @ Jan 31 2007, 15:27) ЦитатаЭт...   Jan 31 2007, 15:36
- - Wild007   Может автор ЦитатаМортона "Микроконтроллеры A...   Jan 31 2007, 15:36
- - SpiritDance   Ржал. Опуфуительная книжка должно быть. Навроде ка...   Jan 31 2007, 15:41
|- - defunct   Цитата(SpiritDance @ Jan 31 2007, 14:41) ...   Jan 31 2007, 15:55
- - add   ЦитатаВсе остальные строчки полностью переписаны и...   Jan 31 2007, 15:49
|- - IgorKossak   Цитата(add @ Jan 31 2007, 14:49) ЦитатаВс...   Jan 31 2007, 16:45
- - smk   Все философское хорошо, но выучить ассеблер нужно....   Jan 31 2007, 21:03
|- - bodja74   Цитата(smk @ Jan 31 2007, 21:03) Все фило...   Jan 31 2007, 23:49
||- - =GM=   Цитата(bodja74 @ Jan 31 2007, 20:49) Цита...   Feb 1 2007, 18:55
|- - singlskv   Цитата(smk @ Jan 31 2007, 21:03) Все фило...   Feb 1 2007, 01:39
- - SasaVitebsk   Цитата(T&D @ Jan 31 2007, 15:27) Вот ...   Feb 1 2007, 00:08
- - bodja74   Если цикл сравнения проходит быстрее клока таймера...   Feb 1 2007, 00:41
- - add   Цитатато можно переписать след. образом Уважаемый ...   Feb 1 2007, 09:51
|- - SasaVitebsk   Цитата(add @ Feb 1 2007, 10:51) Цитатато ...   Feb 1 2007, 13:54
|- - bodja74   Цитата(add @ Feb 1 2007, 09:51) Цитатаbod...   Feb 1 2007, 15:50
|- - T&D   Цитата(bodja74 @ Feb 1 2007, 15:50) Обьяс...   Feb 1 2007, 16:12
||- - defunct   Цитата(T&D @ Feb 1 2007, 15:12) А есл...   Feb 1 2007, 17:17
|- - IgorKossak   Цитата(bodja74 @ Feb 1 2007, 14:50) Обьяс...   Feb 1 2007, 16:39
|- - bodja74   Цитата(IgorKossak @ Feb 1 2007, 16:39) Кт...   Feb 1 2007, 20:23
|- - =GM=   Цитата(bodja74 @ Feb 1 2007, 17:23) 2GM ...   Feb 1 2007, 20:52
|- - bodja74   Цитата(=GM= @ Feb 1 2007, 20:52) Как вы с...   Feb 1 2007, 21:44
|- - =GM=   Цитата(bodja74 @ Feb 1 2007, 18:44) Цитат...   Feb 1 2007, 23:38
- - T&D   Спасибо за ответы. Можно ещё один вопрос задать? В...   Feb 1 2007, 12:53
|- - Сергей Борщ   Цитата(T&D @ Feb 1 2007, 11:53) Я пра...   Feb 1 2007, 13:06
|- - T&D   Цитата(Сергей Борщ @ Feb 1 2007, 13:06) А...   Feb 1 2007, 13:32
|- - Сергей Борщ   Цитата(T&D @ Feb 1 2007, 12:32) Миган...   Feb 1 2007, 16:00
- - add   Собственно фрагмент книги, из-за которого создана ...   Feb 2 2007, 10:13
- - Wild007   Цитата(add @ Feb 2 2007, 09:13) Собственн...   Feb 2 2007, 10:17


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

 


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


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