K A A 0 7 августа, 2006 Опубликовано 7 августа, 2006 · Жалоба Возник такой вопрос: хочу подключить последовательный АЦП (AD7688) через SPORT к Blackfin. Нужно, чтобы частота синхронизации генерировалась процессором. НО, хотелось бы, чтобы она генерировалась не постоянно, а только в моменты непосредственного чтения данных (хочу, чтобы в фазе преобразования АЦП все цифровые сигналы на ногах АЦП молчали). АЦП может генерировать запрос прерывания по окончании преобразования. Читал мануал по SPORT, вроде аппаратно это сделать не удастся. Так ли это? Возиться с двумя прерываниями не хочется (одно по готовности АЦП для запуска последовательного порта, другое по готовности данных для его останова). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dinam 1 8 августа, 2006 Опубликовано 8 августа, 2006 (изменено) · Жалоба Не совсем понял про прерывания, вы хотите чтобы выключенный SPORT сам включался? Про отключение тактовой. Мне было необходимо отключать тактовую частоту SPORT1 BF532rev0.3, которым я управлял АЦП. Пришлось не один день повозится. Правильно порт будет работать в режиме включения-выключения только если дополнительно обнулять биты TCKFE и ITCLK. Оба! Что не совсем согласуется с workaround глюка №70 в файле 74439820ADSPBF532AnomalyListRevXMarch2806.pdf. Изменено 8 августа, 2006 пользователем dinam Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
K A A 0 8 августа, 2006 Опубликовано 8 августа, 2006 · Жалоба Спасибо что напомнили про необходимость изучения аномалий. Я раньше не работал со SPORT, только с SPI, и не понял до конца принцип его работы: генерируется ли в SPORT тактовая постоянно (если выбран режим приема с внутренней генерацией тактовой)? Если она генерируется постоянно и не используется кадровая синхронизация (а может нет такого режима?), то что произойдет, когда вся очередь заполнится? У меня задача подключить к BF531 два АЦП AD7690 (18 бит) через SPORT (SPI занят для других целей). Цифровые линии АЦП я хочу соединить последовательно (Chain mode) и последовательно принимать по 2 18-разрядных слова. Пока придумал такой алгоритм: 1. по готовности АЦП прерывание - запускаем SPORT на прием с внутр. тактовой 2. по готовности каждого слова - прерывание - считываю его 3. после готовности второго слова останавливаю порт. Я понял, что одним прерыванием не обойтись. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Stanislav 0 8 августа, 2006 Опубликовано 8 августа, 2006 (изменено) · Жалоба ...Я раньше не работал со SPORT, только с SPI, и не понял до конца принцип его работы: генерируется ли в SPORT тактовая постоянно (если выбран режим приема с внутренней генерацией тактовой)? Если она генерируется постоянно и не используется кадровая синхронизация (а может нет такого режима?), то что произойдет, когда вся очередь заполнится?Простите за глупый совет, но прежде всего стоит прочитать соотв. раздел Reference manual. Иначе ошибки при проектировании неизбежны. ...У меня задача подключить к BF531 два АЦП AD7690 (18 бит) через SPORT (SPI занят для других целей). Цифровые линии АЦП я хочу соединить последовательно (Chain mode) и последовательно принимать по 2 18-разрядных слова.А зачем? :blink: SPORT имеет два входа последовательных данных, на каждый можно повесить по АЦП. ...Пока придумал такой алгоритм: 1. по готовности АЦП прерывание - запускаем SPORT на прием с внутр. тактовой 2. по готовности каждого слова - прерывание - считываю его 3. после готовности второго слова останавливаю порт. Я понял, что одним прерыванием не обойтись. Я бы Вам посоветовал использовать режим ввода через DMA. Это избавит от многих лишних телодвижений. Изменено 8 августа, 2006 пользователем Stanislav Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
K A A 0 8 августа, 2006 Опубликовано 8 августа, 2006 · Жалоба Спасибо, продолжаю читать. Просто слишком много инфы, не сразу все доходит. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться