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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Переключение между каналами АЦП, ATmega32
domowoj
сообщение Oct 6 2008, 00:34
Сообщение #16


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Вывод!
Делай все как надо - и не будет никаких казусов!


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
Николай Иванович...
сообщение Oct 7 2008, 09:03
Сообщение #17


Частый гость
**

Группа: Новичок
Сообщений: 139
Регистрация: 26-09-08
Пользователь №: 40 510



Цитата(singlskv @ Oct 5 2008, 00:38) *
Странно, а я думал что эта задержка уже включена в первое преобразование.

Нет. Первое холостое преобразование нужно делать, чтобы инициализировать модуль АЦП, поэтому его нужно делать даже в том случае, если питание на модуль АЦП (установкой бита ADEN) подали несколько часов назад. Тем более что время первого преобразования зависит от выбранной частоты тактирования модуля АЦП, и оно может меняться в весьма широких пределах. Тогда как длительность переходных процессов при подаче питания на модуль АЦП фиксирована и не зависит от частоты его тактирования.

Цитата(singlskv @ Oct 5 2008, 00:38) *
Не подскажите в какой момент времени после переключения канала в ADMUX,соответствующий пин подключаеться к Sample-Hold ?

Меня тоже интересует этот вопрос smile.gif Но ответа на него я не нахожу.

Цитата(singlskv @ Oct 5 2008, 00:38) *
А если выходное сопротивление ИСТОЧНИКА очень высокое, то первый результат верный ?

Простите. ОписАлся. Разумеется всё наоборот. smile.gif

Сообщение отредактировал Николай Иванович Приходько - Oct 7 2008, 09:11
Go to the top of the page
 
+Quote Post
VladimirYU
сообщение Oct 7 2008, 12:33
Сообщение #18


Местный
***

Группа: Свой
Сообщений: 426
Регистрация: 5-04-07
Из: Санкт-Петербург
Пользователь №: 26 782



Цитата(Николай Иванович Приходько @ Oct 7 2008, 13:03) *
Нет. Первое холостое преобразование нужно делать, чтобы инициализировать модуль АЦП, поэтому его нужно делать даже в том случае, если питание на модуль АЦП (установкой бита ADEN) подали несколько часов назад. Тем более что время первого преобразования зависит от выбранной частоты тактирования модуля АЦП, и оно может меняться в весьма широких пределах. Тогда как длительность переходных процессов при подаче питания на модуль АЦП фиксирована и не зависит от частоты его тактирования.
Меня тоже интересует этот вопрос smile.gif Но ответа на него я не нахожу.


Простите. ОписАлся. Разумеется всё наоборот. smile.gif


А можно ссылочку необходимоть холостого преобразования. Никогда им не пользовался и проблем небыло. Часто о нем слышал ткните пожалуйста (а то фантом какой то получается). Насчет выборки, как раз все расписано. См. DS для меги128 рис 110, 111, 112.
Go to the top of the page
 
+Quote Post
domowoj
сообщение Oct 7 2008, 14:29
Сообщение #19


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Вот на русском, почти даташиит(хотя и не без ошибок)
Микроконтроллеры AVR семейств Tiny и Mega фирмы Atmel
http://lord-n.narod.ru/walla.html

Первое преобразование на один такт больше.


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
singlskv
сообщение Oct 7 2008, 18:22
Сообщение #20


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(Николай Иванович Приходько @ Oct 7 2008, 13:03) *
Нет. Первое холостое преобразование нужно делать, чтобы инициализировать модуль АЦП, поэтому его нужно делать даже в том случае, если питание на модуль АЦП (установкой бита ADEN) подали несколько часов назад. Тем более что время первого преобразования зависит от выбранной частоты тактирования модуля АЦП, и оно может меняться в весьма широких пределах. Тогда как длительность переходных процессов при подаче питания на модуль АЦП фиксирована и не зависит от частоты его тактирования.
Первое преобразование не холостое и даташит на этот счет говорит однозначно:
A normal conversion takes 13 ADC clock cycles. The first conversion after the ADC is switched
on (ADEN in ADCSRA is set) takes 25 ADC clock cycles in order to initialize the analog circuitry.

То есть 12 лишних ADC циклов для настройки аналога, и уж поверьте что эти 12
циклов рассчитанны для худшего случая, те fADC=200Кгц, так что даже первое преобразование
уже правильное.
Единственный вариант когда нужно делать "холостое" преобразование, когда
опрос АЦП должен быть регулярно, а 25 ADC циклов слишком много, тогда при инициализации АЦП
делаем "холостое" преобразование.
Ну и конечно если выходное сопротивление источника велико, но в этом случае и одного доп.
преобразования может быть мало и при этом теоритических +-0,5LSB никогда не достичь.
Цитата
Меня тоже интересует этот вопрос smile.gif Но ответа на него я не нахожу.
Дык в даташите есть ответ:
The actual sample-and-hold takes place 1.5 ADC clock cycles after the start of a normal conversion
and 13.5 ADC clock cycles after the start of an first conversion.

То есть всего 1,5 ADC цикла, и начинаются они не после ADCSRA |= (1 << ADSC),
а после реального старта преобразования, те когда после выдачи ADCSRA |= (1 << ADSC)
подоспеет очередной фронт fADC.
Go to the top of the page
 
+Quote Post
Николай Иванович...
сообщение Oct 7 2008, 18:35
Сообщение #21


Частый гость
**

Группа: Новичок
Сообщений: 139
Регистрация: 26-09-08
Пользователь №: 40 510



Цитата(domowoj @ Oct 7 2008, 18:29) *
Первое преобразование на один такт больше.

Не на один, а на 12. Курите датушит.
A normal conversion takes 13 ADC clock cycles. The first conversion after the ADC is
switched on (ADEN in ADCSRA is set) takes 25 ADC clock cycles in order to initialize
the analog circuitry.


Цитата(singlskv @ Oct 7 2008, 22:22) *
для худшего случая, те fADC=200Кгц,

200кГц - это не худший случай, а номинальный. Худший - это Fadc=1МГц и большое выходное сопротивление источника сигнала
Go to the top of the page
 
+Quote Post
singlskv
сообщение Oct 7 2008, 18:46
Сообщение #22


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(Николай Иванович Приходько @ Oct 7 2008, 22:35) *
200кГц - это не худший случай, а номинальный. Худший - это Fadc=1МГц и большое выходное сопротивление источника сигнала
для 200кГц 10бит номинально
для 1МГц 8бит,
так что примерно один фиг, доп. 12 тактов fADC хватит в любом варианте...
А большое выходное сопротивление источника сигнала...,
дык даташит его однозначно регламенирует:
The ADC is optimized for analog signals with an output impedance of approximately 10 kΩ or
less.

Так что если у Вас больше, это Ваши сложности...
Go to the top of the page
 
+Quote Post
Николай Иванович...
сообщение Oct 7 2008, 19:01
Сообщение #23


Частый гость
**

Группа: Новичок
Сообщений: 139
Регистрация: 26-09-08
Пользователь №: 40 510



Цитата(singlskv @ Oct 7 2008, 22:46) *
для 200кГц 10бит номинально
для 1МГц 8бит,
так что примерно один фиг, доп. 12 тактов fADC хватит в любом варианте...

12 тактов при Fadc=1МГц длятся по времени в 5 раз меньше чем при Fadc=200кГц.
А Вы говорите "один фиг".

А если брать в расчёт нижнюю границу "нормы" 50 кГц... 200кГц, то и в 20 раз

Сообщение отредактировал Николай Иванович Приходько - Oct 7 2008, 19:04
Go to the top of the page
 
+Quote Post
singlskv
сообщение Oct 7 2008, 19:10
Сообщение #24


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(Николай Иванович Приходько @ Oct 7 2008, 23:01) *
12 тактов при Fadc=1МГц длятся по времени в 5 раз меньше чем при Fadc=200кГц.
А Вы говорите "один фиг".

а 10бит к 8битам как соотносятся ?
Go to the top of the page
 
+Quote Post
domowoj
сообщение Oct 8 2008, 03:18
Сообщение #25


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Цитата(Николай Иванович Приходько @ Oct 8 2008, 01:35) *
Не на один, а на 12. Курите датушит.
A normal conversion takes 13 ADC clock cycles. The first conversion after the ADC is
switched on (ADEN in ADCSRA is set) takes 25 ADC clock cycles in order to initialize
the analog circuitry.

Звиняйте Дядьку.
"И на старуху бывает проруха"


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th June 2025 - 07:04
Рейтинг@Mail.ru


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