Вопрос по таймеру и не только.

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
prw07
Мучитель микросхем
Сообщения: 403
Зарегистрирован: Ср янв 26, 2011 17:00:30

Re: Вопрос по таймеру и не только.

Сообщение prw07 »

делать вычисления, да еще с плавающей точкой, в прерываниях (любых) - это дурной тон в программировании для МК
Что-то я не пойму. Т.е. мне нужно опрашивать АЦП в основной программе, но не через прерывания, а в замкнутом цикле? Зачем процессору париться над этим? А если он занят? Объясните пожалуйста.
Блин. Ссылки и на другом броузере все-равно не работают.
Почему не выйдет? К одному шунту подключаете два усилителя с разными коэффициентами усиления. И на разные входы АЦП
Не внимательно читал. Думал два шунта.
Реклама
Мастер Ломастер
Поставщик валерьянки для Кота
Сообщения: 1995
Зарегистрирован: Ср май 11, 2011 21:37:45
Откуда: Цветочный город
Контактная информация:

Re: Вопрос по таймеру и не только.

Сообщение Мастер Ломастер »

prw07 писал(а):Т.е. мне нужно опрашивать АЦП в основной программе, но не через прерывания, а в замкнутом цикле? Зачем процессору париться над этим? А если он занят? Объясните пожалуйста.
я не могу сказать, что вам нужно делать. но я знаю, чего вам делать не нужно. и об этом говорю. не жалейте процессор, он кремниевый и работает от электричества, усталость ему незнакома :) уж не знаю, чем вам помочь с просмотром ссылок, но найдите способ их просмотреть - вроде толково все описано...
битва с дураками проиграна, победители торжествуют. слава победителям!
Реклама
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Вопрос по таймеру и не только.

Сообщение Meteor »

prw07 писал(а):мне нужно опрашивать АЦП в основной программе, но не через прерывания, а в замкнутом цикле? Зачем процессору париться над этим? А если он занят? Объясните пожалуйста.
Можно пойти 2мя путями:
1) выделить переменную в которой указывать события. Отработал АЦП - ставим признак. Отработал таймер - ставим другой признак. И. тд. основном цикле программы. проверяем признаки и производим обработку данных.
2) Почти тоже что в п.1 но только читать данные в самих прерываниях и помещать в буфер. Далее признак - и обработка вне прерываний.
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
prw07
Мучитель микросхем
Сообщения: 403
Зарегистрирован: Ср янв 26, 2011 17:00:30

Re: Вопрос по таймеру и не только.

Сообщение prw07 »

ну и в чем преимущество? как по мне то только сложнее чем с прерыванием. А выгоды нет.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Meteor
Друг Кота
Сообщения: 3961
Зарегистрирован: Пн июл 13, 2009 14:37:39
Откуда: Московская область, наукоград.....
Контактная информация:

Re: Вопрос по таймеру и не только.

Сообщение Meteor »

Выгода в том, что вся обработка вне прерываний. И она начинает ощущаться, когда прерываний несколько: АЦП+ таймер+UART+ еще чего -нибудь. И если программа повиснет в перрывании - то можете потерять другие события или неверно их трактовать.
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Реклама
Аватара пользователя
Финский
Открыл глаза
Сообщения: 59
Зарегистрирован: Сб авг 28, 2010 13:29:43
Откуда: Докучаевск, Донецк
Контактная информация:

Re: Вопрос по таймеру и не только.

Сообщение Финский »

CodeVision на операцию "TCCR0=(1<<CS20)" выдает ошибку "неизвестная переменная CS20"
И правильно выдает. В регистре TCCR0 нет бита CS20, есть бит CS02. Скорее всего, вы банально опечатались :)
[color=#800000]Техноманьяк и IT-шаман. Танцы с бубном на дому.[/color]
Реклама
prw07
Мучитель микросхем
Сообщения: 403
Зарегистрирован: Ср янв 26, 2011 17:00:30

Re: Вопрос по таймеру и не только.

Сообщение prw07 »

Выгода в том, что вся обработка вне прерываний. И она начинает ощущаться, когда прерываний несколько: АЦП+ таймер+UART+ еще чего -нибудь. И если программа повиснет в перрывании - то можете потерять другие события или неверно их трактовать
. Т.е. использовать АЦП в прерываниях можно тогда , когда прерывания не заняты другими процессами? Или категорично не использовать прерывания для АЦП?
В регистре TCCR0 нет бита CS20, есть бит CS02. Скорее всего, вы банально опечатались
Ошибку выдает в любом случае. И так и эдак.
Закрыто

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