Перейти к содержанию
    

AD9361 и CCS 5.5

Доброго времени суток.

Есть некий отладочный модуль, который практически полностью повторяет собой конфигурацию TMDSEVM6670l. На нем находится трансивер ad9361, который необходимо инициализировать и настроить "изнутри", для чего пишется программа для загрузки в отладочный модуль. Из документации к трансиверу я нашел, что команды должны посылаться в виде:

формат команды: 24 бита = х000000 хххххххххх ххххххххх

                                                            Адрес        Данные

Причем в программном коде это выглядит так:

ad9361_transact_spi((reg << 8) | val | (1 << 23));, где reg и val это соответственно регистр куда писать и значение которое надо писать.

Однако же, я вынужден использовать Code Composer Studio, и он естественно не поймет таких функций, ввиду отсутствия библиотек и компилятора для них. Там тоже можно писать в SPI, используя функцию spi_cmd_write, в которой входными данными являются команда и данные. Я понятия не имею, как указать конкретный адрес, может быть кто-нибудь сталкивался с похожей ситуацией и знает как осуществить сопряжение таких команд? Заранее спасибо

Изменено пользователем Koltaras

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Однако же, я вынужден использовать Code Composer Studio, и он естественно не поймет таких функций, ввиду отсутствия библиотек и компилятора для них. Там тоже можно писать в SPI, используя функцию spi_cmd_write, в которой входными данными являются команда и данные. Я понятия не имею, как указать конкретный адрес, может быть кто-нибудь сталкивался с похожей ситуацией и знает как осуществить сопряжение таких команд? Заранее спасибо

CCS тут не при чём. Открываете даташит на Ваш DSP, ищете в нём описание SPI-периферии (а также: мультиплексирование ног, тактирование и пр.), изучаете и пишете все необходимые функции.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

. . . .

Причем в программном коде это выглядит так:

ad9361_transact_spi((reg << 8) | val | (1 << 23));, где reg и val это соответственно регистр куда писать и значение которое надо писать.

Однако же, я вынужден использовать Code Composer Studio, и он естественно не поймет таких функций, ввиду отсутствия библиотек и компилятора для них. Там тоже можно писать в SPI, используя функцию spi_cmd_write, в которой входными данными являются команда и данные. Я понятия не имею, как указать конкретный адрес, может быть кто-нибудь сталкивался с похожей ситуацией и знает как осуществить сопряжение таких команд? Заранее спасибо

 

У Texas ( если CodeComposer из этой епархии ) есть пакет "DriverLib". Порядка 200 Мб

Нечто, имеющее название MSP430ware_1_80_01_03

 

Там в исходниках драйверы-библиотеки для работы с различными семействами MSP430, начиная с 5XXX (если речь опятьже о них)

В том числе и драйверы для SPI в похожем формате, с потугами на HAL.

Я брал "низовую" часть кода.

Можно просто попробовать прикомпоновать требуемую библиотеку-набор драйверов. Но как по мне - очень громоздко.

Вы можете попробовать найти аналог Вашего вызова в этй библиотеке и использоватеь его.

Или - как я - "украсть" только исполнимую часть кода, без "навески" в виде макросов.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...