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

 
 
> Измерения напряжения во времини, как фиксировать время когда измерили напряжения
roman@
сообщение Apr 17 2008, 20:12
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 27-01-08
Пользователь №: 34 465



Привет, я начал изучать мк и может мой вопрос глуп ,но кто может дайте совет .Мне надо сделать измерения напряжения во времени с помощью микроконтроллера Atmega16, как можна фиксировать время когда АЦП завершилось и передать результат ацп и время на ПК, и что б счет при этом продолжался? Я в программирование последовательного интерфейсу мк не силен и использую передачу результату на lpt в прерыванию ацп.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
svs39
сообщение Apr 18 2008, 06:09
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 8-03-08
Пользователь №: 35 744



при обмене данными ПК передает в МК текущее время для коррекции хода часов
Go to the top of the page
 
+Quote Post
roman@
сообщение Apr 18 2008, 16:37
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 27-01-08
Пользователь №: 34 465



Я хочу сделать такую зависимость чтоб показывало : сделало 1 ацп это 0с,
второе это например 3с и так дали. И мне интересно будет ли считать таймер когда попаду в прерывание ацп и когда передаю данные на ПК в этом же прерывание .То есть передал первой результат, завершилось второе ацп и хочу передать это время когда завершилось второе (время которое истекло после первого), и так дале …
Go to the top of the page
 
+Quote Post
Maik-vs
сообщение Apr 21 2008, 11:10
Сообщение #4


Местный
***

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



Цитата(roman@ @ Apr 18 2008, 20:37) *
Я хочу сделать такую зависимость чтоб показывало : сделало 1 ацп это 0с,
второе это например 3с и так дали. И мне интересно будет ли считать таймер когда попаду в прерывание ацп и когда передаю данные на ПК в этом же прерывание .То есть передал первой результат, завершилось второе ацп и хочу передать это время когда завершилось второе (время которое истекло после первого), и так дале …

Разумеется, таймер считает независимо ни от чего. Но при выполнении кода в прерывании все прерывания запрещены. Поэтому, если долго "сидеть" в прерывании, можно "проспать" прерывания от других источников - от таймера, например. То есть флаг запроса на прерывание от таймера установится когда нужно, а вот процедура обработки прерывания начнётся, когда будет установлен бит I регистра SREG. Обычно, если нужно измерять через какой-то интервал, делается так: Обработчик прервания по таймеру запускает измерение. Обработчик прерывания по окончанию преобрахования АЦП выдаёт чего намерял. Всё. В остальное время выполняется основная программа ну или можно уйтив sleep если делать нечего - будет экономиться потребление тока.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 04:06
Рейтинг@Mail.ru


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