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

 
 
 
Reply to this topicStart new topic
> АЦП, непонятные явления при считывании
Zelepuk
сообщение Mar 12 2011, 10:54
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464



Здравствуйте!

Хочу считать данные с АЦП. АЦП 8-ми канальный, данные считываю по паралельной шине микроконтроллером, а затем вывожу числа на экран компьютера (через COM-порт).

Тестирую АЦП, подавая на первый вход 5в (максимальное напряжение)
Так вот считанные данные поступают в циклический буфер. Когда забираю данные только с одного канала (один раз дёргаю RD), то данные отображаются как и должно быть один за другим:

32657
32657
32657
32657
.
.
.

Когда считываю данные из 8-ми каналов(8 раз дёргаю RD) и вывожу на экран циклически все данные то видно что по первому каналу наблюдаются аномалии время от времени:

32657 // 1 канал
10323 // 2 канал
10323 // 3 канал
10323 // 4 канал
10323 // 5 канал
10323 // 6 канал
10323 // 7 канал
10323 // 8 канал
5324 // 1 канал
.
.
.
16323 // 1 канал
.
.
.
32657 // 1 канал

С чём это может быть связано? Странно что эти аномалии проявляются толкьо если считываю больше 1 канала. (значит с самим сигналом всё впорядке и дело в связке АЦП+процессор)

Может кто сталкивался?...
Go to the top of the page
 
+Quote Post
alexPec
сообщение Mar 12 2011, 11:49
Сообщение #2


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

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968




АЦП какой? Числа на первом канале всегда одинаково меняются или случайно, т.е. одни и те же числа на выходе первого канала или случайные? На остальные каналы что подключено? На атмеге похожий эффект был, после переключения канала надо было подождать, иначе влияло как-то напряжение того канала который до этого был включен. Так и не поборол. Пришлось ожидание оставить, скорость опроса снижалась.
Причина редактирования: Избыточное цитирование! Т.
Go to the top of the page
 
+Quote Post
нечитатель
сообщение Mar 12 2011, 17:26
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 235
Регистрация: 20-11-10
Пользователь №: 61 032



Цитата(alexPec @ Mar 12 2011, 14:49) *
после переключения канала надо было подождать,
пока ёмкость входа АЦП зарядится либо разрядится до нового напряжения.
Можно "бороть" увеличением тока зарядки/разрядки. Если удастся организовать бесконечно большой этот ток, то ждать придётся ровно 0 микросекунд.

По сабжу:

1). добрый вечер,
2). это может быть связано с ошибкой в программе,
3). да, кто-нибудь сталкивался может.
Go to the top of the page
 
+Quote Post
alexPec
сообщение Mar 12 2011, 20:02
Сообщение #4


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

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Цитата(нечитатель @ Mar 12 2011, 20:26) *
Можно "бороть" увеличением тока зарядки/разрядки.

Как если коммутатор внутри? На вход коммутатора помню с опера ad831 подавалось, крутой опер по тем временам, куда уж больше ток?
Go to the top of the page
 
+Quote Post
Stepanov
сообщение Mar 12 2011, 21:02
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 448
Регистрация: 16-03-09
Из: Москва
Пользователь №: 46 143



Вопрос задан слабо. Нет информации о ситуации. Какие МС? Какая схема? Какая программа? maniac.gif
Go to the top of the page
 
+Quote Post
нечитатель
сообщение Mar 13 2011, 01:55
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 235
Регистрация: 20-11-10
Пользователь №: 61 032



Цитата(alexPec @ Mar 12 2011, 23:02) *
Как (...) ?
Любыми способами, которые а). доступны + б). целесообразны.
Ещё раз: для мгновенной перезарядки конденсатора ток должен быть бесконечным...
... а процессор, работающий на бесконечно большой тактовой частоте, сможет потом мгновенно же обработать любое количество любых результатов любых измерений. И тоже было бы интересно: как?

Цитата
крутой опер по тем временам, куда уж больше ток?
ээээ... извините, отстаю от прогресса. Раньше ток от учёного Ома зависел.

Сообщение отредактировал нечитатель - Mar 13 2011, 01:58
Go to the top of the page
 
+Quote Post
VCO
сообщение Mar 13 2011, 04:42
Сообщение #7


Voltage Control Output
******

Группа: Свой
Сообщений: 4 598
Регистрация: 21-07-09
Из: Kursk
Пользователь №: 51 436



ТС - 2 с минусом! "Как челобитную царю подаешь?" "ИВМП"TM twak.gif biggrin.gif
Если речь идёт о том, что МК бежит вперёд АЦП (паровоза) - всё понятно.
Если речь идёт о сигма-дельтовых АЦП, то ничего непонятно! laughing.gif
Если речь идёт о АЦП на компараторах, например, как у Maxim, тоже непонятно!
"Огласите весь список пжлст!"


--------------------
Слово - не воробей, вылетит - не пощадит
Go to the top of the page
 
+Quote Post
Tanya
сообщение Mar 13 2011, 06:22
Сообщение #8


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(Stepanov @ Mar 13 2011, 00:02) *
Вопрос задан слабо. Нет информации о ситуации. Какие МС? Какая схема? Какая программа? maniac.gif

Это фирменный стиль автора(ов) (иногда их двое).
Если автор не напишет ничего толкового в ближайшее время, эта тема пойдет в корзину, а автору воздастся за флуд.
Go to the top of the page
 
+Quote Post
Zelepuk
сообщение Mar 13 2011, 11:42
Сообщение #9


Знающий
****

Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464



АЦП AD7606 (АЦП одновременной выборки по всем 8 каналам) и микроконтроллер AVR.
В прерывании от АЦП делаю следующее:

Выставляю сигнал CS/RD (они объеденены - закорочены).

Забираю данные в паралельном виде и ложу в буфер по указателю,
затем убираю CS/RD и икрементирую указатель,

Затем опять выставляю CS/RD и так далее.... 8раз!

Про само прерывание: микроконтроллер подаёт на АЦП импульсы с периодом 20мкс(запуская преобразование), микроконтроллер по положительному фронту каждого такого импульса запускает преобразование по всем 8-ми каналам, и посылает сигнла на микрокотроллер на вход внешнего прерывания, по спаду на котором и запускается программа описаная выше....

Надеюсь исчерпывающе написал....

___________________________________

для Tanya:

какой ещё флуд? Ла однажды я написал от чужого ника случайно.... никак не пойму что тут такого?
Вот у кого-то была похожая проблема. Значит тема не флуд.

Сообщение отредактировал Zelepuk - Mar 13 2011, 12:15
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 13 2011, 12:29
Сообщение #10


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Неисчерпывающе.
Параллельного интерфейса там 2 вида.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Zelepuk
сообщение Mar 13 2011, 12:41
Сообщение #11


Знающий
****

Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464



Я использую Reading After Converstion и CS and RD, Linked Parallel Mode
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 13 2011, 12:45
Сообщение #12


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Страница 27.
Какой вид интерфейса 8 разрядов или 16?

---
Судя по всему это для вас полная неожиданность.
Когда используешь новую для себя микросхему, обычно скачиваешь примере применения от производителя.
Со всей схемотехникой и программами.
И тогда неожиданностей существенно меньше.

На сайте аналога есть подобная информация. 61.7 мегабайт информации по этой микросхеме.

Сообщение отредактировал DpInRock - Mar 13 2011, 12:58


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Zelepuk
сообщение Mar 13 2011, 12:57
Сообщение #13


Знающий
****

Группа: Участник
Сообщений: 634
Регистрация: 27-10-10
Пользователь №: 60 464



Да простите забыл использую интерфейс 8 разрядов. Так как работаю c AVR и складываю потом данные правильно, так как преобразование по одному каналу работает сиправно.

Просто если забираю больше одного - появляются "аномалии" описаные выше...
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 13 2011, 13:02
Сообщение #14


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



1. Тогда описание вашего алгоритма неверное. Данные идут в два пульса РД.
2. Что дает вам уверенность, что микросхема ЗНАЕТ о том, что вы работаете именно по этому интерфейсу?
--
3. До кучи. Что дает вам уверенность, что старший бит считываемого слова на самом деле не является МЛАДШИМ битом значения напряжения?

Сообщение отредактировал DpInRock - Mar 13 2011, 13:03


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Tanya
сообщение Mar 13 2011, 13:20
Сообщение #15


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(Zelepuk @ Mar 13 2011, 14:42) *
Надеюсь исчерпывающе написал....

___________________________________

для Tanya:

какой ещё флуд? Ла однажды я написал от чужого ника случайно.... никак не пойму что тут такого?
Вот у кого-то была похожая проблема. Значит тема не флуд.

Почитайте правила. Вы и Ваши действия подпадают. Следите за словами и их смыслом. Думаю, что такая форма выражения уважения собеседника, будет всеми адекватно оценена.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 12:02
Рейтинг@Mail.ru


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