Red de conocimiento informático - Conocimiento sistemático - Pide a los expertos que te expliquen la comunicación SPI en circuitos. ¿Qué es SPI?

Pide a los expertos que te expliquen la comunicación SPI en circuitos. ¿Qué es SPI?

El sistema de bus SPI (Serial Peripheral Interface-Serial Peripheral Interface) es una interfaz periférica en serie síncrona que permite que el microcontrolador y varios dispositivos periféricos se comuniquen e intercambien información en serie. SPI tiene tres registros: registro de control SPCR, registro de estado SPSR y registro de datos SPDR. Los dispositivos periféricos incluyen FLASHRAM, controlador de red, controlador de pantalla LCD, convertidor A/D, MCU, etc. El sistema de bus SPI puede interactuar directamente con una amplia gama de dispositivos periféricos estándar de diferentes fabricantes. La interfaz generalmente utiliza cuatro líneas: línea de reloj en serie (SCLK), línea de datos de entrada de host/salida de esclavo MISO, línea de datos de salida de host/entrada de esclavo MOSI y línea de selección de esclavo activo de bajo nivel NSS (algunos chips de interfaz SPI con línea de señal de interrupción INT , algunos chips de interfaz SPI no tienen línea de datos de salida de host/entrada esclava MOSI).

El nombre completo de la interfaz SPI es "Serial Peripheral Interface", que significa interfaz periférica en serie. Fue definida por primera vez por Motorola en el decodificador de señal digital de su procesador de la serie MC68HCXX.

La interfaz SPI es una transferencia de datos en serie síncrona entre la CPU y dispositivos periféricos de baja velocidad. A través del pulso de cambio del dispositivo maestro, los datos se transmiten bit a bit, con el bit alto al frente y el bit bajo detrás, logrando una comunicación full-duplex. La velocidad de transmisión de datos es generalmente más rápida que la del bus I2C. a varios Mbps.

La interfaz de edición incluye las siguientes cuatro señales:

(1) MOSI - salida de datos del dispositivo maestro, entrada de datos del dispositivo esclavo

(2) MISO - maestro entrada de datos del dispositivo, salida de datos del dispositivo esclavo

(3) SCLK - señal de reloj, generada por el dispositivo maestro

(4) NSS - señal de habilitación del dispositivo esclavo, controlada por el dispositivo maestro , algunos IC se marcarán como CS (selección de chip)

En la comunicación punto a punto, la interfaz SPI no requiere operaciones de direccionamiento y es una comunicación full-duplex, por lo que es simple y eficiente. Diagrama de conexión de hardware multiesclavo En un sistema multiesclavo, cada dispositivo esclavo requiere una señal de habilitación separada, por lo que el hardware es un poco más complejo que un sistema I2C.

El hardware interno de la interfaz SPI son en realidad dos registros de desplazamiento simples. Los datos transmitidos son de 8 bits. Bajo la señal de habilitación del dispositivo esclavo y el pulso de desplazamiento generado por el dispositivo maestro, los datos se transmiten bit a bit. bit La posición alta está al frente y la posición baja está detrás. Como se muestra en la figura siguiente, los datos cambian en el flanco descendente de SCLK y un bit de datos se almacena en el registro de desplazamiento.