English
Поиск по сайту
Новости AKTAKOM(513)
Новости Anritsu(111)
Новости Fluke(134)
Новости Keithley(78)
Новости Keysight Technologies(591)
Новости Metrel(17)
Новости National Instruments(265)
Новости NIST(0)
Новости Pendulum(20)
Новости Rigol(74)
Новости Rohde & Schwarz(490)
Новости Tektronix(199)
Новости Texas Instruments(19)
Новости Yokogawa(89)
Новости Росстандарта(135)
АКТАКОМ
Anritsu
FLUKE
Keithley Instruments
Keysight Technologies
METREL
National Instruments
NIST
RIGOL
Rohde & Schwarz
Spectracom
Tektronix
Texas Instruments
Yokogawa
Росстандарт
Авторизация
Логин:
Пароль:
Забыли свой пароль?
Зарегистрироваться
Реклама на сайте

SPI

Об Энциклопедии измерений
Поиск:  

SPI

SPI (Serial Peripheral Interface / SPI bus – последовательный периферийный интерфейс, шина SPI) – последовательный синхронный стандарт передачи данных в режиме полного дуплекса, предназначенный для обеспечения простого и недорогого высокоскоростного сопряжения микроконтроллеров и периферии. SPI также иногда называют четырёхпроводным интерфейсом.

В отличие от стандартного последовательного порта, SPI является синхронным интерфейсом, в котором любая передача синхронизирована с общим тактовым сигналом, генерируемым ведущим устройством (процессором). Принимающая (ведомая) периферия синхронизирует получение битовой последовательности с тактовым сигналом. К одному последовательному периферийному интерфейсу ведущего устройства-микросхемы может присоединяться несколько микросхем. Ведущее устройство выбирает ведомое для передачи, активируя сигнал «выбор кристалла» на ведомой микросхеме. Периферия, не выбранная процессором, не принимает участия в передаче по SPI.

В SPI используются четыре цифровых сигнала:

  • MOSI — выход ведущего, вход ведомого (англ. Master Out Slave In). Служит для передачи данных от ведущего устройства ведомому.
  • MISO — вход ведущего, выход ведомого (англ. Master In Slave Out). Служит для передачи данных от ведомого устройства ведущему.
  • SCLK — последовательный тактовый сигнал (англ. Serial Clock). Служит для передачи тактового сигнала для ведомых устройств.
  • CS или SS — выбор микросхемы, выбор ведомого (англ. Chip Select, Slave Select).

Синхронизация в SPI

Частота следования битовых интервалов в линиях передачи данных определяется синхросигналом SCK, который генерирует ведущее устройство, ведомые устройства используют синхросигнал для определения моментов изменения битов на линии данных, при этом ведомые устройства никак не могут влиять на частоту следования битовых интервалов. Как в ведущем устройстве, так и в ведомом устройстве имеется счетчик импульсов синхронизации (битов). Счетчик в ведомом устройстве позволяет последнему определить момент окончания передачи пакета. Счетчик сбрасывается при выключении подсистемы SPI, такая возможность всегда имеется в ведущем устройстве. В ведомом устройстве счетчик обычно сбрасывается деактивацией интерфейсного сигнала SS.

Так как действия ведущего и ведомого устройства тактируются одним и тем же сигналом, то к стабильности этого сигнала не предъявляется никаких требований, за исключением ограничения на длительность полупериодов, которая определяется максимальной рабочей частотой более медленного устройства. Это позволяет использовать SPI в системах с низкостабильной тактовой частотой, а также облегчает программную эмуляцию ведущего устройства.

Приём и передача данных в SPI

Передача осуществляется пакетами. Длина пакета, как правило, составляет 1 байт (8 бит), при этом известны реализации SPI с иной длиной пакета, например, 4 бита. Ведущее устройство инициирует цикл связи установкой низкого уровня на выводе выбора подчиненного устройства (SS) того устройства, с которым необходимо установить соединение. При низком уровне сигнала SS:

  • схемотехника ведомого устройства находится в активном состоянии;
  • вывод MISO переводится в режим «выход»;
  • тактовый сигнал SCLK от ведущего устройства воспринимается ведомым и вызывает считывание на входе MOSI значений передаваемых от ведущего битов и сдвиг регистра ведомого устройства.

Подлежащие передаче данные ведущее и ведомое устройства помещают в сдвиговые регистры. После этого ведущее устройство начинает генерировать импульсы синхронизации на линии SCLK, что приводит к взаимному обмену данными. Передача данных осуществляется бит за битом от ведущего по линии MOSI и от ведомого по линии MISO. Передача осуществляется, как правило, начиная со старших битов, но некоторые производители допускают изменение порядка передачи битов программными методами. После передачи каждого пакета данных ведущее устройство, в целях синхронизации ведомого устройства, может перевести линию SS в высокое состояние.

На рис.: Типичная структура связей и линий интерфейса SPI

Режимы работы интерфейса SPI

Возможны четыре комбинации фазы (CPHA) и полярности (CPOL) сигнала SCLK по отношению к сигналам данных. Режимы работы определяются комбинацией бит CPHA и CPOL:

  • CPOL = 0 — сигнал синхронизации начинается с низкого уровня;
  • CPOL = 1 — сигнал синхронизации начинается с высокого уровня;
  • CPHA = 0 — выборка данных производится по переднему фронту сигнала синхронизации;
  • CPHA = 1 — выборка данных производится по заднему фронту сигнала синхронизации.

Для обозначения режимов работы интерфейса SPI принято следующее соглашение:

  • режим 0 (CPOL = 0, CPHA = 0);
  • режим 1 (CPOL = 0, CPHA = 1);
  • режим 2 (CPOL = 1, CPHA = 0);
  • режим 3 (CPOL = 1, CPHA = 1).

На рис.: Временные диаграммы работы интерфейса SPI при CPHA = 0 (красная вертикальная линия) и CPHA = 1 (синяя вертикальная линия)

Источник


Возврат к списку

Свежий номер
№ 6 Декабрь 2019
КИПиС 2019 № 6
Тема номера:
Новинки измерительной техники
Подписаться на журнал
WEB-приложение для подписчиков журнала
События из истории измерений
18.01.1880
Родился австрийский и нидерландский физик-теоретик
Конвертер единиц измерения