Cbiker
May 19 2009, 11:55
В общем, вышеупомянутый питомец(все SPI АЦП похоже устроены в плане управления) не хочет работать в тестовом режиме, а именно не пишутся практически все конфигурационные регистры.
Все дефолтовые значения читаются правильно, по двум регистрам управления каналами и синхросигналами все нормально - и пишется и читается.
http://www.analog.com/static/imported-file...eets/AD9271.pdf
Смотрите в сторону работы SPI процессора и соблюдения протокола обмена.
Достаточно корявое решение использовать двунаправленную линию в SPI-подобных интерфейсах, но тут никуда не деться.
Попробуйте линию SDO процессора подключить к SDIO через резистор 300-1000 Ом (чтоб можно было бы опознать конфликты на линии), уменьшить до минимума скорость работы SPI и всматриваться в протокол обмена осциллографом.
Cbiker
May 19 2009, 12:40
Надо было сразу написать. Все эти вещи уже сделаны, резистор 300 омный, столкновений нет, все диаграммы красивые. Формирую диаграмму сам, ПЛИСиной. с этой стороны не подкопаться - диаграмма на сигналтапе тоже адекватная. Тем более не понятен вопрос с записью именно в конкретные регистры.
1) попробуйте выяснить взаимосвязь между работающими регистрами и их адресами, между неработающими регистрами и их адресами. М.б. проблемы в каких-либо битах адреса.
2) поищите описание регистров. в регистрах могут быть реализованы не все биты, или же возможны случаи:
read-only bit
always read as 0
always read as 1
undefined
write 1 to clear
3) там нет никаких регисторных банков? не надо ли выбрать регистровый банк A с помощью записи в регистр B, для того чтобы по адресу C можно было читать/писать регистр D ?
4) Раз речь о ПЛИСине: нет ли никаких паразитных, просочившихся из-за м.б. некоторой ассинхронщины паразитных коротких импульсов на линии CLK, которая идёт на AD9271?
5) На линию CLK резистор 50-100 Ом, снижаем добротность, мало ли звон.
Cbiker
May 19 2009, 13:21
Попробовав все регистры выяснилось, что записываються только два, остальные нет. Биты адреса все не проверишь, из-за малого количества регистров и нулевых дефолтовых значений.
2) такого точно нет, обычная регистровая модель.
3) Банков тоже нет.
4) Синхросигнал дифференциальный и чистый, формируется PLL, выходные LVDS сигналы тоже чистые и адекватные, а значит PLL АЦП завелся нормально (это если вдруг от него питается цифровая часть с регистрами).
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.