Koltaras 0 30 мая, 2016 Опубликовано 30 мая, 2016 (изменено) · Жалоба Доброго времени суток. Есть некий отладочный модуль, который практически полностью повторяет собой конфигурацию TMDSEVM6670l. На нем находится трансивер ad9361, который необходимо инициализировать и настроить "изнутри", для чего пишется программа для загрузки в отладочный модуль. Из документации к трансиверу я нашел, что команды должны посылаться в виде: формат команды: 24 бита = х000000 хххххххххх ххххххххх Адрес Данные Причем в программном коде это выглядит так: ad9361_transact_spi((reg << 8) | val | (1 << 23));, где reg и val это соответственно регистр куда писать и значение которое надо писать. Однако же, я вынужден использовать Code Composer Studio, и он естественно не поймет таких функций, ввиду отсутствия библиотек и компилятора для них. Там тоже можно писать в SPI, используя функцию spi_cmd_write, в которой входными данными являются команда и данные. Я понятия не имею, как указать конкретный адрес, может быть кто-нибудь сталкивался с похожей ситуацией и знает как осуществить сопряжение таких команд? Заранее спасибо Изменено 30 мая, 2016 пользователем Koltaras Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 191 30 мая, 2016 Опубликовано 30 мая, 2016 · Жалоба Однако же, я вынужден использовать Code Composer Studio, и он естественно не поймет таких функций, ввиду отсутствия библиотек и компилятора для них. Там тоже можно писать в SPI, используя функцию spi_cmd_write, в которой входными данными являются команда и данные. Я понятия не имею, как указать конкретный адрес, может быть кто-нибудь сталкивался с похожей ситуацией и знает как осуществить сопряжение таких команд? Заранее спасибо CCS тут не при чём. Открываете даташит на Ваш DSP, ищете в нём описание SPI-периферии (а также: мультиплексирование ног, тактирование и пр.), изучаете и пишете все необходимые функции. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k155la3 26 31 мая, 2016 Опубликовано 31 мая, 2016 · Жалоба . . . . Причем в программном коде это выглядит так: 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. Я брал "низовую" часть кода. Можно просто попробовать прикомпоновать требуемую библиотеку-набор драйверов. Но как по мне - очень громоздко. Вы можете попробовать найти аналог Вашего вызова в этй библиотеке и использоватеь его. Или - как я - "украсть" только исполнимую часть кода, без "навески" в виде макросов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться