Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AD7793
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Вопросы аналоговой техники
firstvald
Пользую 7793. Чудеса стал замечать сразу, как стал с ней работать. Первое, что увидел , при однократном преобразовании данные полученные в этом цикле преобразования на самом деле нужно очень быстро прочитать. Иначе через несколько миллисекунд (зависит от темпа преобразования) они портятся и видно, что там начинается какой-то процесс - считывается какая-то меняющаяся во времени фигня. Не стал разбираться - пошло в работу так. А сейчас сел ковыряться и поподробнее смотреть, как все работает - оказывается нестабильно читается ID микросхемы. Если читать подряд, получается с десяток чтений то, что надо, потом что-то непонятное. Непонятно читается значение калибровочных регистров. Кто-нибудь разбирался с этм?
DVF
Планирую применять - интересно послушать имеющих опыт с AD7793
firstvald
Опрашиваю тех кто работает со мной. На фокусы не обращали внимание, типа написали , заработало как-то и все . Фокусы с калибровкой какие-то видели. Просто перестали ее использовать.
demiurg_spb
Цитата(firstvald @ Jan 27 2011, 13:14) *
Опрашиваю тех кто работает со мной. На фокусы не обращали внимание, типа написали , заработало как-то и все . Фокусы с калибровкой какие-то видели. Просто перестали ее использовать.

Использую AD7792 - суть та же, только 16-бит вместо 24.
Никаких чудес нет. Самокалибровку делать надо обязательно - иначе точность сильно страдает.
Вполне доволен.
firstvald
Во- во. Чудес нет до тех, пор пока не посмотришь внимательно, как он работает.
Tanya
Цитата(firstvald @ Jan 27 2011, 18:05) *
Во- во. Чудес нет до тех, пор пока не посмотришь внимательно, как он работает.

А если почитать FAQ... Почитать.
firstvald
Цитата(Tanya @ Jan 27 2011, 22:24) *
А если почитать FAQ... Почитать.

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

Я вижу, что автомат , который за обмен отвечает - чихает. В принципе, можно плюнуть на это, но иметь это в виду, но это означает, что надо каждое чтение делать несколько раз и брать совпадающие значения.
Tanya
Цитата(firstvald @ Jan 27 2011, 23:30) *
Да что -то мало написано.

А там очень рекомендуется держать где-то там единицу... Если память меня не подводит...
demiurg_spb
Цитата(firstvald @ Jan 27 2011, 18:05) *
Во- во. Чудес нет до тех, пор пока не посмотришь внимательно, как он работает.
Что-то не понимаю я Вас. Продано почти за 5 лет очень много приборов и в каждом по 2 таких АЦП. Всё работает согласно ДЩ.

Цитата(Tanya @ Jan 28 2011, 00:20) *
А там очень рекомендуется держать где-то там единицу... Если память меня не подводит...
Вы про какой FAQ толкуете? Я кроме datasheet ничего не читал. Что-то есть ещё?
firstvald
wink.gif Здорово sm.gif
Единицу рекомендуют держать на линии DIN. Держу ее и не отпускаюsm.gif Распечатал FAQ sm.gif))

Tanya
Цитата(demiurg_spb @ Jan 28 2011, 00:41) *
Вы про какой FAQ толкуете? Я кроме datasheet ничего не читал. Что-то есть ещё?

http://www.analog.com/static/imported-file...Instru_Conv.pdf
Ссылка на страничке продукта.
firstvald
Да, именно этот документ.


Да не работает он согласно даташиту. Перечитайте первый пост и посмотрите. У нас тоже так говорят - мы же делаем серию уже давно. Вроде работает. Спрашиваю : а это смотрели? -Нет. Ну и все.


Tanya
Цитата(firstvald @ Jan 28 2011, 12:18) *
Да не работает он согласно даташиту.

Тут подобных сообщений много было... Эти штучки уже давно выпускаются, и цифровая часть одинаковая у всей серии...
Стандартная рекомендация - подайте на них в суд.
Типа - я купил много-много, поверив даташиту, а оказалось - шит.
Вы же писали, что сначала все правильно... Может быть, начинается следующее измерение? У Вас.
firstvald
sm.gif Лучше всего в Басманный. В порядке оффтопа. Хочешь фокус , говорят, посмотреть ? Конечно хочу! Идем на участок. Показывают большую коробку набитую одноплатками. Микрухи запаяли по диагонали на двух выводах и все. Платы, видно, покупали у караванщиков у подножья Гималаев.

Кстати, эти засранцы для непрерывного режима в даташите написали - больше одного раза значение преобразования спрашивать нельзя. Для однократного режима, видно, много недописали. Что ни дата - сплошой шит.

Буду еще смотреть.
Tolyaha
Цитата(firstvald @ Jan 26 2011, 22:40) *
А сейчас сел ковыряться и поподробнее смотреть, как все работает - оказывается нестабильно читается ID микросхемы. Если читать подряд, получается с десяток чтений то, что надо, потом что-то непонятное. Непонятно читается значение калибровочных регистров. Кто-нибудь разбирался с этм?

Последовательный синхронный интерфейс, если по входу SCLK проскочит ложный импульс (помеха или програмно ошибочно) или наоборот нехватит, то все данные сдвинутся и пойдет ересь пока не сбросиш. Нада осцилом проконтролировать этот вход и устранить помеху или сбрасывать перед каждым циклом АЦП, посылая 4 байта FF FF FF FF в АЦП.
alexPec
Цитата(Tolyaha @ Feb 1 2011, 14:22) *
Последовательный синхронный интерфейс, если по входу SCLK проскочит ложный импульс (помеха или програмно ошибочно) или наоборот нехватит, то все данные сдвинутся и пойдет ересь пока не сбросиш. Нада осцилом проконтролировать этот вход и устранить помеху или сбрасывать перед каждым циклом АЦП, посылая 4 байта FF FF FF FF в АЦП.

Кстати да, такая фигня была с dds-ом. Ткнешся тестером на ногу интерфейса - и привет, пока master reset не дернешь - ничего не прочитаешь и не запишешь. Там даже фреймовой синхронизации нет.
firstvald
С чтением ID и калибровок нашел ошибку у себя - просто еще из прерывания проезжался по чтению (все время видел одну и туже картину, не мог понять почему, alexpEC подтолкнул, a14.gif ). А вот с чтением измеренного значения дела обстоят так. При запуске однократного преобразования, нужно как можно скорее, после завершения преобразования, прочитать данные.

Данные остаются годными для времени преобразования:
32 миллисекунды - надо прочитать в течении 32 мс
40 мс - в течение 24 мс
48 мс - в течение 18 мс
60 мс - в течение 8 мс
demiurg_spb
Цитата(firstvald @ Feb 4 2011, 19:14) *
Данные остаются годными для времени преобразования:
32 миллисекунды - надо прочитать в течении 32 мс
40 мс - в течение 24 мс
48 мс - в течение 18 мс
60 мс - в течение 8 мс
Всё более-менее логично.
alexPec
Цитата(firstvald @ Feb 4 2011, 19:14) *
Данные остаются годными для времени преобразования:
32 миллисекунды - надо прочитать в течении 32 мс
40 мс - в течение 24 мс
48 мс - в течение 18 мс
60 мс - в течение 8 мс

Похоже на то что входной sampling amplifier имеет свое УВХ, построенное наверняка на конденсаторах, кторые держат заряд примерно 60 мс, а преобразование наверняка начинается по клокам синхронного интерфейса. Не прочитали за 60 мс - все, заряд ушел...
firstvald
Да не логично. Однократное преобразование. Закончилось - данные перенслись в дата регистр, в статусе сбросили занятость. А потом почему все это портится со временем? Все должно остановиться. Там видно автомат продолжает молотить и схема куда-то улетает. Какие то атавизмы от последовательного преобразования остались.
Tolyaha
Цитата(firstvald @ Feb 4 2011, 21:23) *
Там видно автомат продолжает молотить и схема куда-то улетает. Какие то атавизмы от последовательного преобразования остались.

Специально проверил АЦП 7793, выполняя следующую последовательность действий:
SendByteAD (0xff); // сброс АЦП (4 посылки 0xff)
SendByteAD (0xff);
SendByteAD (0xff);
SendByteAD (0xff);
- пауза 1 ms для сброса АЦП;
SendByteAD (0x10); // настройка АЦП для записи в CONFIG регистр
SendByteAD (0x10); // запись в CONFIG регистр HB (однополярный режим, усиление 1)
SendByteAD (0x10); // запись в CONFIG регистр LB (1 канал c буфером)
SendByteAD (0x08); // настройка АЦП для записи в MODE регистр
SendByteAD (0x20); // запись в MODE регистр HB (Single Conversion)
SendByteAD (0x01); // запись в MODE регистр LB (Internal 64 kHz Clock, 4 ms conversion)
- пауза 5 s для проверки предположения об утрате данных АЦП;
SendByteAD (0x58); // настройка АЦП для чтения данных
ReadByteAD (); // чтение данных АЦП 1 байт
ReadByteAD (); // чтение данных АЦП 2 байт
ReadByteAD (); // чтение данных АЦП 3 байт
Данная последовательность дает правильное значение измерения, все работает как положено и данные не теряются.
Смотрите внимательнее свой алгоритм работы с АЦП.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.