rav38 0 6 июля, 2016 Опубликовано 6 июля, 2016 (изменено) · Жалоба Здравствуйте! Попробовал применить решение, основанное на АЦП от TI ADS131E04. http://www.ti.com/product/ADS131E04 Выбор обусловлен достойными характеристиками и относительно невысокой ценой. В итоге поимел непонятные проблемы с зависанием АЦП. Либо пропадает сигнал готовности данных DRDY, либо считываю непонятные цифры, пропадает опорное напряжение. Создал ветку на форуме e2e.ti https://e2e.ti.com/support/data_converters/...s/f/73/t/524589 Указали на недочеты по питанию - с опорным вопрос кажется отпал. Попробовал постоянно аппаратно сбрасывать АЦП после каждой серии измерений, так как первое измерение проходит корректно. Логика сейчас такая: Если удалось считать данные 16 раз подряд (не пропал сигнал DRDY) и слово STATUS не равно нулю (первые 4 бита 1100 - не всегда так бывает даже если данные верны), выдаю данные наверх. После RESET микросхемы и перенастройка АЦП - все в кучу 10 мс. Такая цепочка может не проходить в течение нескольких секунд. Если и проходит - примерно каждая 10 серия измерений с непонятными цифрами. Стабилизация параметров, исправление разводки земли и различные танцы с бубном ничего не меняет. Грешу впервую очередь на кривизну своей платы и кода, но вдруг все же для этой микросхемы критично необходим внешний генератор тактовой частоты или источник опорного напряжения, а не внутренние. Или еще нюансы.... Пока понял, что однозначно лучше было команду использовать START аппаратнно, но не особо критично. Относительно схемы во вложении - оптрон DRDY изменён на другой. У того что в схеме не хватает быстродействия. Если у кого-то есть опыт применения АЦП серии ADS131 прошу поделиться рабочей конфигурацией этого АЦП. Пока не понимаю в какую сторону двигаться с переделками и в чем ошибка. VMP.pdf Изменено 7 июля, 2016 пользователем rav38 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gosh 0 11 июля, 2016 Опубликовано 11 июля, 2016 · Жалоба Как раз сейчас с этим АЦП работаю. Все получилось, но как-то много подводных камней поймал, хотя все они между делом описаны в даташите. На что стоит обратить внимание: 1. При вычитывании результатов измерения на DIN необходимо держать "0". Если же там будут какие данные, может словить как команду (DIN should remain low for the entire read operation.), стр. 30; 2. CSn переводить в неактивное состояние с некоторой задержкой: After the serial communication is finished, four or more tCLK cycles must elapse before taking CS high. Стр. 21; 3. Сигнал SCLK переводит DRDYn в неактивное состояние, даже если CSn не активный. Стр. 30. Если есть еще какой-нибудь слейв за этом SPI, будут коллизии; 4. Необходимо соблюсти временные интервалы на исполнение команд и при включении, стр. 27; 5. Бит DAISY_IN регистра CONFIG1 должен быть в "1". По схеме: 1. Надо не забыть корректно учесть задержку в цифровом изоляторе (типовая 32нс, максимум 50нс.) Получается, что на вход SPI данные от АЦП будут запаздывать относительно SCLK на 64...100нс. Соответственно этому должна быть выбрана частота SCLK. 2. Если входные сигналы однополярные, то нормально. Если двуполярый - надо делать среднюю точку (половина питания) и к ней цеплять входы Inxn. У меня работает в режиме RDATAC. Сигнал START так же программный, используются внутренние клок и источник опорного напряжения. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться