МК AVR задержка через TCNT0

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
KekZzz
Родился
Сообщения: 5
Зарегистрирован: Ср фев 22, 2012 09:05:40

МК AVR задержка через TCNT0

Сообщение KekZzz »

Народ привет. Начинаю изучать МКашки, нашелинтересную книгу Д.Мортона по AVR'ам. Тут прога бегущий огонь с регулирование скорости с 0.1с до 1с. В counter заносится 1-10 для выбора требуемой задержки; mark240 - маркер для организации задержки в 0.1 (тактовая частота 2.4ггц). Собственно вот фрагмент:

Timer:

in temp,TCNT0
cp temp,mark240
brne timer

subi mark240,-240
dec counter
rjmp start


Я не могу понять зачем прибавлять к маркеру число "240" каждый раз по достижении таймером "240" :( объясните пожалуйста. Спасибо!)
Реклама
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: МК AVR задержка через TCNT0

Сообщение ploop »

тактовая частота 2.4ггц
А что за AVR-ка с такой частотой, если не секрет? :)
Я не могу понять зачем прибавлять к маркеру число "240" каждый раз по достижении таймером "240" :( объясните пожалуйста. Спасибо!)
Прибавляется минус 240, т.е. вычитается 240. Это такой сброс таймера.
На самом деле код чисто для обучения, в реальном проекте такое использовать - глупость, т.к. у таймера есть несколько режимов работы, например сброс по совпадению.
Реклама
KekZzz
Родился
Сообщения: 5
Зарегистрирован: Ср фев 22, 2012 09:05:40

Re: МК AVR задержка через TCNT0

Сообщение KekZzz »

по моему у 90s1200 2.4 ггц.

subi разве не вычитает?
SUBI - вычесть непосредственное значение.
- (-240) будет плюс.

Так как лучше реализовать задержку используя/не используя таймер?
"сброс по совпадению", а что еще?

И какие реально толковые книги можно еще почитать?=)
KekZzz
Родился
Сообщения: 5
Зарегистрирован: Ср фев 22, 2012 09:05:40

Re: МК AVR задержка через TCNT0

Сообщение KekZzz »

Ап! Вопрос еще открыт!
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: МК AVR задержка через TCNT0

Сообщение SubDia »

Во-первых, максимальная частота у 90s1200 - 12 МГц (и то, у 90s1200-12). Во-вторых, учитывая незнание режимов работы таймеров, а также п.1, можно сделать вывод, что в даташит Вы даже не заглядывали. Этим и озаботьтесь для начала.
А в плане книг гугл поможет. Он не помогает только тем, ко не ищет.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Реклама
KekZzz
Родился
Сообщения: 5
Зарегистрирован: Ср фев 22, 2012 09:05:40

Re: МК AVR задержка через TCNT0

Сообщение KekZzz »

Tcnt может работать как таймер и как счетчик что следует из названия. настраивается регистром tccr (частота для таймера и изменение счета по фронтам для счетчика). И чего же я не знаю? Да и кстати я думал этот раздел для того чтобы задавать вопросы и получать на них ответы. По крайней мере это написано в описании раздела.
Реклама
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: МК AVR задержка через TCNT0

Сообщение SubDia »

---------оффтоп, можно не читать-------------
KekZzz писал(а):Да и кстати я думал этот раздел для того чтобы задавать вопросы и получать на них ответы.
А я думал, что прежде чем задавать вопросы, нужно самостоятельно хотя бы документацию от производителя изучать.
Ладно, проехали.
----------------------------------------------------
По поводу команды subi

subi mark240,-240

Там, очевидно, применяется декремент (dec), отсюда и прибавление. Но приемчик странноват, откровенно говоря.
И насчет вопроса "использовать/не использовать таймер для задержек" - конечно же лучше использовать.
ЗЫ. За резкость тона не забижайтесь.
Последний раз редактировалось SubDia Пн мар 05, 2012 13:52:44, всего редактировалось 1 раз.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: МК AVR задержка через TCNT0

Сообщение hybroid »

SubDia писал(а):и тебе все разжевали. Красота!
"Даташиты на распространённые МК в кратком изложении для лентяев" Издание второе, дополненное бабушками на лавочках. :))
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: МК AVR задержка через TCNT0

Сообщение SubDia »

hybroid, да я тоже неправ - нельзя так сразу на людей. "С людями надо быть помягше, а на вопросы смотреть ширше".
ЗЫ. Но даташиты при этом не забывать читать. :)))
ЗЗЫ. Топикстартеру - насчет книжек - если асм, то у Вольфганга Трамперта есть две замечательные книги по МК АВР. Названий точно не помню.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
hybroid
Друг Кота
Сообщения: 8007
Зарегистрирован: Вс ноя 14, 2010 19:24:26
Откуда: Лукалэнд

Re: МК AVR задержка через TCNT0

Сообщение hybroid »

А меня жуть как бесит, когда начинаются нюни на тему: "А зечем же ещё форум нужен? Я думал тут советуют.. ПАМАГИТЕ блиа, йа весь такой няшный и учусь!!" Хочется взять и уе.. что-то нехорошее сделать.
SubDia писал(а):нельзя так сразу на людей
А по мне - так ничего плохого в этом нету. Особенно после гигагерц частоты.
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: МК AVR задержка через TCNT0

Сообщение Jack_A »

hybroid писал(а): Особенно после гигагерц частоты.
:))
KekZzz
Родился
Сообщения: 5
Зарегистрирован: Ср фев 22, 2012 09:05:40

Re: МК AVR задержка через TCNT0

Сообщение KekZzz »

МГц) так там же декрементируется каунтер, а суби 240 прибавляет к марку?
Аватара пользователя
SubDia
Держит паяльник хвостом
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Re: МК AVR задержка через TCNT0

Сообщение SubDia »

Собственно, это и хотел уточнить.
А приведите полный исходный текст, если это возможно, и он не шибко велик.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: МК AVR задержка через TCNT0

Сообщение ploop »

Там по хитрому выходит: SUBI -240 будет прибавить 240, или вычесть 16 с установкой флага переполнения :)
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»