Поиск и устранение проблем с интерфейсом SPI

Последовательный периферийный интерфейс (SPI) является стандартом синхронного последовательного канала передачи данных, который работает в полнодуплексном режиме. Он обычно используется в тестовом и измерительном поле. Общие способы применения включают связь с микроконтроллерами, EEPROM, A2D устройствами, встроенными контроллерами и т.д.

Поддержка Instrument Control Toolbox™ SPI позволяет открывать соединения с отдельными чипами и читать и записывать соединения с отдельными чипами с помощью адаптера Aardvark или NI-845x хоста. Основное использование для spi интерфейс включает в себя write, read, и writeAndRead функции для синхронного чтения и записи двоичных данных.

Поддерживаемые платформы

Для использования NI-845x необходимо установить хост-адаптер Total Phase Aardvark или плату spi адаптера интерфейс.

Интерфейс SPI поддерживается на этих платформах при использовании с хост-адаптером Aardvark:

  • Linux® - Красная шляпа® Корпоративные Linux 4 и 5 с ядром 2.6 и, возможно, SUSE® и распределения Ubuntu.

  • Microsoft® Windows® 64-разрядная версия

Примечание

Для R2018b и R2018a нельзя использовать адаптер Aardvark для I2C или SPI интерфейсов на платформе macOS. Вы по-прежнему можете использовать его в Windows и Linux. Для релизов до R2018a можно использовать его на всех трех платформах, включая Mac.

Интерфейс SPI поддерживается на этих платформах при использовании с NI-845x адаптером хоста:

  • 64-разрядная версия Microsoft Windows

Требования к адаптерам

Вам нужен либо хост-адаптер Total Phase Aardvark, либо плата NI-845x адаптера, установленная для использования spi интерфейс. В следующих разделах описываются требования для каждой опции.

Специфические для Aardvark требования

Чтобы использовать интерфейс SPI с адаптером Aardvark, загрузите пакет аппаратной поддержки, чтобы получить последний драйвер, если драйвер еще не установлен. Если у вас уже установлен последний драйвер, загрузка этого пакета поддержки не требуется.

Если драйвер Aardvark не установлен, см. раздел Установка пакета поддержки I2C/SPI интерфейса Total Фазу Aardvark.

Установите программный API Aardvark и общую библиотеку, соответствующие вашей операционной системе.

The aardvark.dll файл, поставляемый с платой адаптера Total Phase Aardvark, должен быть доступен в одном из следующих расположений для использования на платформах Windows:

  • Место, где MATLAB® был запущен из (интервал)

  • Текущая папка MATLAB (PWD)

  • Папка Windows C:\winnt или C:\windows

  • Папки, перечисленные в переменной окружения пути

Для использования на платформах Linux, aardvark.so файл, поставляемый с платой адаптера Total Phase Aardvark, должен находиться в пути MATLAB.

NI-845x-specific требования

Чтобы использовать интерфейс SPI с NI-845x адаптером, загрузите пакет аппаратной поддержки, чтобы получить последний драйвер, если драйвер еще не установлен. Если у вас уже установлен последний драйвер, вы не должны загружать этот пакет поддержки.

Если драйвер NI-845x не установлен, см. раздел Установка пакета поддержки NI-845x I2C/SPI Interface.

Строение и подключение

  1. Убедитесь, что для устройства установлен правильный драйвер прибора. См. документацию устройства и веб-сайт поставщика.

  2. Убедитесь, что ваше устройство поддерживается в Instrument Control Toolbox. См. «Поддерживается ли мое оборудование?».

  3. Для использования интерфейса SPI необходимо установить хост-адаптер Total Phase Aardvark или плату NI-845x адаптера. Установите соответствующий пакет поддержки, если еще нет. См. раздел «Требования к адаптерам».

    Убедитесь, что плата адаптера SPI подключена к компьютеру с MATLAB. Можно проверить, что один из адаптеров установлен, используя instrhwinfo функция со spi имя интерфейса.

    Если вы не видите ни одного aardvark или ni845x необходимо установить один из пакетов поддержки или установить драйвер непосредственно от поставщика.

  4. Убедитесь, что Instrument Control Toolbox распознает ваше устройство, используя instrhwinfo функция со spi имя интерфейса и имя адаптера aardvark или ni845x. Для примера:

    Для создания spi потребуется отображаемая информация объект. Если устройство не отображается, проверьте предыдущие шаги.

  5. Убедитесь, что вы можете создать spi объект. Для создания объекта необходимо указать три аргумента. BoardIndex и Port как правило, оба 0, и Vendor является либо 'aardvark' или 'ni845x'. В этом примере используется объект SPI, называемый S который соединяется с микросхемой EEPROM. Создайте объект с помощью BoardIndex и Port числа, которые 0 в обоих случаях.

    % Vendor = aardvark
    % BoardIndex = 0
    % Port = 0
    
    S = spi('aardvark', 0, 0);
  6. Если вы не получите ошибку, объект был создан успешно. Для проверки можно просмотреть свойства объекта, используя имя, которое вы присвоили объекту, S в этом случае.

  7. Убедитесь, что вы можете подключиться к устройству, используя connect функция с именем объекта.

    connect(S);

    Если вы не получите ошибку, подключение было успешно выполнено. Если вы получили ошибку, выполните шаги в сообщении об ошибке и/или проверьте предыдущие шаги, перечисленные здесь.

  8. Когда вы подключены, вы можете связаться с вашим устройством. Пример чтения и записи в микросхему см. в разделе Передача данных по интерфейсу SPI.