Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Последствия превышения частоты преобразования
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
gte
Рекомендуемая максимальная частота 200 КГц. Если тактировать от 20 МГц, то хотелось бы использовать делитель на 64, получиться 312,5КГц. Кто пробовал использовать АЦП на повышенных частотах?
Интересует, верно ли предположение, что шумы растут пропорционально частоте?
InvisibleFed
Тоже интересует вопрос. В доках указано, что 15 килосемплов можно получить для полной разрядности в 10 разрядов. Мне, например, хватит и 8. Как тогда определить, что новые данные записались в ADCH? Прерывание ведь, как я понимаю, сгенрится только когда все 10 разрядов сформируются (13,5 тактов).
rx3apf
Цитата(InvisibleFed @ Mar 30 2008, 04:29) *
Тоже интересует вопрос. В доках указано, что 15 килосемплов можно получить для полной разрядности в 10 разрядов. Мне, например, хватит и 8. Как тогда определить, что новые данные записались в ADCH? Прерывание ведь, как я понимаю, сгенрится только когда все 10 разрядов сформируются (13,5 тактов).

К сожалению, даташиты от Atmel и по сей день особой ясностью изложения не отличаются. В описании mega8 было указано, что для достижения максимальной точности преобразования частота тактирования ADCдолжна быть в пределах 50-200 kHz. Но если точность некритична, то можно увеличить частоту. И в разделе электрических характеристик верхняя частота приведена - 1 MHz. Для 48-88-168 тоже есть указание, что частоту можно увеличить. Но в электрических характеристиках указано, что верхняя - 200 kHz (но нет замечаний по точности - похоже, просто убран или не вставлен). Полагаю, что для 8 бит вполне можно тактировать от 1 MHz, по аналогии с предыдущими кристаллами...
oran-be
Если начать повышать частоту преобразования, то начнет врать компаратор АЦП, если понижать, то начнет утекать конденсатор УВХ. Если грубо прикидывать, то при условии, что на 200 кГцах обеспечивается 10 бит, то на 800 кГц при тех же условиях будет 8.
gte
Хорошо. Может есть смысл попробовать остановиться на частоте 312 кГц и использовать ADC Noise Reduction mode в надежде получить суммарный выигрыш.
singlskv
Цитата(gte @ Mar 30 2008, 03:07) *
Рекомендуемая максимальная частота 200 КГц. Если тактировать от 20 МГц, то хотелось бы использовать делитель на 64, получиться 312,5КГц. Кто пробовал использовать АЦП на повышенных частотах?
P.S. Перечитал внимательно описание на Мегу 88 не нашел регистра, позволяющего включать ускоренное пребразование. По 88 не актуально, но все равно вопрос остается.
Эта частота только рекомендуемая, Вы можете использовать ЛЮБУЮ частоту АЦП,
просто у атмела нормированны данные только для 10бит(50-200КГц) и для
8бит (1мГц) при этом никто не мешает использовать частоты между 200 и 1000кГц, c
соответствующей потерей точности(но не разрешающей способности, она ВСЕГДА 10 бит).
Более того, никто не мешает использовать АЦП вобще без делителя, те на полной скорости,
13 тактов clk на преобразование, только это возможно для очень низкоомных сигналов и/или
для очень медленно меняющихся сигналов, ну и сколько значимых бит при этом
останется неизвестно, нужно пробовать
gte
Цитата(singlskv @ Mar 30 2008, 23:47) *
Более того, никто не мешает использовать АЦП вобще без делителя, те на полной скорости

А вот такие вещи предпочитаю не делать. Всетаки указана максимальная частота 1 МГц. С ростом частоты не только точность падает, но и тепловыделение растет.
Цитата(singlskv @ Mar 30 2008, 23:47) *
просто у атмела нормированны данные только для 10бит(50-200КГц) и для
8бит (1мГц) при этом никто не мешает использовать частоты между 200 и 1000кГц, c

У меги 88 нормируется только ухудшение абсолютной точности с 2 до 4,5 LSB
singlskv
Цитата(gte @ Mar 31 2008, 00:22) *
, но и тепловыделение растет.
Ну если Вы хотите оверсемплинг но не хотите повышенного потребления,
но хотите оверточность.... smile.gif
Потребление вырастет на единицы процентов.
Цитата
Всетаки указана максимальная частота 1 МГц

Цитата
....получиться 312,5КГц. Кто пробовал использовать АЦП на повышенных частотах?
Или это не Вы спрашивали ?
InvisibleFed
Цитата
Эта частота только рекомендуемая, Вы можете использовать ЛЮБУЮ частоту АЦП,
просто у атмела нормированны данные только для 10бит(50-200КГц) и для
8бит (1мГц) при этом никто не мешает использовать частоты между 200 и 1000кГц, c
соответствующей потерей точности(но не разрешающей способности, она ВСЕГДА 10 бит).

Вот это не понял. Если разрешающая способнсть всегда 10 бит, то что тогда означает точность и как ее оценить (на сколько она упадет от 1000 кГц)? Получается, что все равно надо считывать эти самые 10 бит, просто значение в них будет более "кривое"? И в абсолютных ли значениях? Иными словами, могу ли я утверждать, что "кривость" этого значения будет проявлятся именно в младших 2-х разрядах, тогда как старшие 8 (которые мне и нужны) будут вполне себе точны?
Сергей Борщ
Цитата(InvisibleFed @ Mar 31 2008, 00:22) *
Получается, что все равно надо считывать эти самые 10 бит, просто значение в них будет более "кривое"?
Зачем читать все 10 бит? Взведите бит ADLAR, читайте только ADCH и получите только свои 8 бит.
gte
Цитата(singlskv @ Mar 31 2008, 00:37) *
Ну если Вы хотите оверсемплинг но не хотите повышенного потребления,
но хотите оверточность.... smile.gif

Вы не так поняли. Я имел в виду, что некорректно использование частот выше 1 МГц.
Изначально вопрос был про 312 КГц.
InvisibleFed
Дык все-таки вопрос... Кто пробовал реально тактировать 1 МГц и снимать старшие 8 разрядов? Работает?
singlskv
Цитата(InvisibleFed @ Mar 31 2008, 17:08) *
Дык все-таки вопрос... Кто пробовал реально тактировать 1 МГц и снимать старшие 8 разрядов? Работает?
Я пробовал, работает.
VBA
Добрый день, выше было упоминание о режиме ADC NOISE REDUCTION.
Не хочу создавать новую ветку, спрошу здесь.
Когда контроллер спит в этом режиме, останавливается тактовый
сигнал CLKio. А что будет с выходными уровнями портов, которые
были установлены до спящего режима? Он случайно выводы в Z
не переведет? Что то не найду об этом в даташите. Спасибо
gte
На странице 73 описания на Мегу 88 расписаны сигналы портов. При снятии clk io не проходит через синхронизирующие тригера, больше ничего не должно изменяться.
oran-be
Цитата(gte @ Mar 30 2008, 19:25) *
Хорошо. Может есть смысл попробовать остановиться на частоте 312 кГц и использовать ADC Noise Reduction mode в надежде получить суммарный выигрыш.

Реальные отжимания на Меге 8 и Меге 48 показали, что этот ADC Noise Reduction mode при нормально разведенной печатной плате ни к чему не приводит. Шум, производимый ядром явно ниже уровня разрешения АЦП. Если плату развести неправильно, картина, конечно может изменится, но это надо постараться. smile.gif
Цитата(VBA @ Mar 31 2008, 17:29) *
Добрый день, выше было упоминание о режиме ADC NOISE REDUCTION.
Не хочу создавать новую ветку, спрошу здесь.
Когда контроллер спит в этом режиме, останавливается тактовый
сигнал CLKio. А что будет с выходными уровнями портов, которые
были установлены до спящего режима? Он случайно выводы в Z
не переведет? Что то не найду об этом в даташите. Спасибо

Остановка CLK - это не сброс - все регистры останутся в том же состоянии.
Dj.Shadow
Цитата(singlskv @ Mar 30 2008, 23:47) *
....никто не мешает использовать АЦП вобще без делителя, те на полной скорости,
13 тактов clk на преобразование, только это возможно для очень низкоомных сигналов и/или
для очень медленно меняющихся сигналов....

А на сколько низкоомных?
singlskv
Цитата(Dj.Shadow @ Apr 1 2008, 10:51) *
А на сколько низкоомных?
Ну, наверное очень поздно, но попробую ответить на Ваш вопрос,
краткий ответ заключается в том, чем меньше, тем точнее...результат
Все остальное можно тока считать/оценивать....
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.