El término "SPI" se aplica a una variedad de protocolos. Un sistema SPI típico tendrá un dispositivo "maestro" y uno o más esclavos. Cada dispositivo esclavo tendrá una entrada de reloj, una entrada de datos, una salida de datos y, por lo general, un cable de selección de chip. Un dispositivo maestro tendrá salida de reloj, salida de datos y entrada de datos, y usualmente utilizará una E / S de propósito general para conducir los cables de selección de chips de los esclavos. En general, la máquina de estado de comunicaciones de un dispositivo esclavo se mantendrá restablecida cada vez que se desestime su cable de selección de chip.
Hay tantas variaciones que simplemente saber que algo es "SPI" no dice mucho al respecto. Es útil saber que "MOSI" (master-out-slave-in) es un término usado para describir tanto la salida de datos del maestro como la entrada de datos del esclavo, y "MISO" (master-in-slave-out) es un término utilizado para describir tanto la salida de datos del esclavo como la entrada de datos del maestro. De lo contrario, sin embargo, uno realmente debe consultar la hoja de datos de un dispositivo SPI para saber cómo tendrá que comunicarse con él. La mayoría de los periféricos SPI que se encuentran en los microcontroladores pueden admitir las variaciones más comunes, pero no todos los controladores soportan todas las variaciones. Por ejemplo, aunque la mayoría de los dispositivos envían y reciben los datos con el bit más significativo primero, algunos dispositivos envían y reciben los datos con el bit menos significativo primero (y pueden tener razones de hardware para hacerlo).