Страница 153 из 399
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 20:16:19
xkp
не слышал о таком... завтра подумаю над этим. спать пора уже.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 20:47:04
ploop
Это нечто обратное ШИМу. Т.е. по одному фронту модуль обнуляет таймер и запускает его, а по другому фронту - останавливает. В итоге, имеем событие от модуля и период в тактах таймера, находящийся в регистре таймера.
Есть. Там есть регистры захвата, в которые попадает состояние таймера при внешнем сигнале, либо сигнале с компаратора.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 20:59:59
xkp
а поподробнее можно?
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 21:38:25
ploop
Можно. Даташит - Input Capture Unit
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:04:37
ILYAUL
+ Евстифеев , сто раз здесь помянутый
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:08:05
xkp
весь даташит перерыл но Input Capture Unit ненашел. я думаю, что я слишком буквально понял.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:14:55
ILYAUL
см таймеры и возможость работы в таком режиме
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:16:50
xkp
ну а где же мне еще смотреть? там и смотрю. и повторюсь, слабы мои познания в английском. в ридере даже поиск не находит Input Capture Unit
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:29:30
ploop
Глянул. У 13 тини один восьмибитный таймер, и действительно нет такого модуля.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:30:33
xkp
тини85 нужно
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:33:59
ploop
Запутаешься тут с вами

Тоже нет.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:35:26
Alexeyslav
А где-то я тут приводил расчет такого таймера, по требуемому шагу настройки считал необходимую частоту счета. получалось 18Мгц надо для того чтобы получить шаг в 50Гц на 30кГц. Или это было в соседней теме?
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:37:10
xkp
ту тему закрыли. перенесли сюда. на предыдущей странице посмотри. ссылка есть на ту тему.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:44:17
xkp
повторяюсь, познания в английском невелики. тем более уже определили что такого режима нет в тини85. вопрос остался: как точно измерить ширину импульса?
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 22:45:22
ploop
В прерывании смотри состояние таймера.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср сен 05, 2012 23:15:51
Alexeyslav
А каковы пределы измерения ширины импульса? Идея в принципе очень проста - элемент "И" на входе таймера работающего в режиме счета внешних импульсов, на один вход - измеряемый импульс, на второй тактовую частоту. Так же измеряемый импульс завести на прерывание по спаду - сработает прерывание - в нем читаем содержимое таймера, и обнуляем его для следующего измерения. Всего делов...
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт сен 06, 2012 07:07:09
xkp
нужно измерить время затухания катушки индуктивности. ОУ обеспечивает лог 1 пока идет спад импульса, в то же время когда импульс еще не начал падать (т.е. на катушку подается напряжение) на выходе того же ОУ лог 0. в общем на выходе ОУ лог 1 только в том случае когда идет спад импульса.
примерно условно выглядит так:
Код: Выделить всё
___
___| |___ импульс подаваемый на катушку
___
___| \___ импульс непосредственно на катушке
_
______||__ импульс на выходе ОУ, время затухания
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт сен 06, 2012 07:16:28
Alexeyslav
Алгоритм я описал, можешь потихоньку реализовывать.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт сен 06, 2012 07:16:52
GP1
xkp писал(а):повторяюсь, познания в английском невелики. ..
для таких как я (и ты) не обладающих глубокими познаниями в аглицком, существуют книжки Евстифеева из серии "Микроконтроллеры фирмы Atmel серии мега (тину)", есть в сундуке, качай-читай
по измерению:
в прерывании по INT0 (оно-то точно есть во всех мк) читаем значение счетчика таймера
- если надо измерить период - то выставляешь сработку по спаду или нарастанию сигнала
- если измеряем длительность импульса - по изменению уровня на входе, можно в зависимости от полярности импульса, к примеру для положительного импульса, выставить сработку по нарастающему фронту, а затем в самом прерывании переключить на сработку по спаду сигнала, затем при сработке по спаду обратно переключить на сработку по нарастанию сигнала, и так по кругу.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт сен 06, 2012 07:22:08
Alexeyslav
У этого метода есть недостаток... пока мы входим в прерывание и до фиксации значения ... таймер все еще считает. внося неконтролируемую погрешность.