![]() |
![]() |
![]() |
![]() |
![]() |
CARACTERÍSTICAS PRINCIPALES DEL SPI |
La Interface Periférica serie (SPI) permite una transferencia de datos síncrona de alta velocidad entre el AT90S8515 y los dispositivos periféricos o entre varios dispositivos AVR. Las características del SPI del AT90S8515 incluyen lo siguiente: Transferencia de datos síncrona de 3 hilos, Full-duplex Funcionamiento como Maestro o Esclavo Transferencia de datos, primero LSB o MSB Cuatro velocidades de bit programables Flag de interrupción de fin de transmisión Flag de protección de Colisión en escritura Activación desde el Modo Idle (Sólo en modo esclavo) |
(Si desea ver esta imagen en una página completa pulse AQUÍ) |
Figura. Diagrama de bloques SPI
La interconexión entre las CPUs del maestro y del esclavo con el SPI se muestra en la siguiente figura. El pin PB7(SCK) es el clock de salida en el modo maestro y es la entrada de clock en el Modo esclavo. Escribiendo en el registro de datos del SPI del maestro, la CPU pone en marcha el generador de clock del SPI y el dato escrito se desplaza fuera del pin PB5(MOSI) y entra en el pin PB5(MOSI) de la CPU del esclavo. Después de mover un byte, el generador de clock del SPI se detiene y pone a set el flag de fin de transmisión (SPIF). Si el bit de habilitación de interrupción del SPI (SPIE) en el registro SPCR está a set, una interrupción es solicitada. La entrada de selección del esclavo, PB4(SS'), se pone a nivel bajo para seleccionar un dispositivo SPI esclavo individual. Los dos registros de desplazamiento en el maestro y en el esclavo puede ser considerado como un registro de desplazamiento circular de 16-bit distribuido. Cuando el dato se desplaza del maestro al esclavo, el dato también se desplaza en la dirección opuesta, simultáneamente. Esto significa que durante un ciclo de desplazamiento, el dato en el maestro y en el esclavo se intercambia. |
Figura. Conexión Maestro-Esclavo del MSI
El sistema tiene un solo buffer en la dirección de transmisión y doble buffer en la dirección de recepción. Esto significa que los bytes que se van a transmitir no pueden escribirse en el registro de datos del SPI antes de que el ciclo de desplazamiento entero se complete. Cuando el dato se recibe, sin embargo, el byte recibido debe leerse del registro de datos del SPI antes de que el próximo byte haya sido completamente desplazado. De otra forma, el primer byte se pierde. Cuando el SPI se habilita, la dirección de datos de los pines MOSI, MISO, SCK y SS' es sustituida según la siguiente tabla. |
Pin | Dirección, SPI Maestro | Dirección, SPI Esclavo |
MOSI | Definida por el usuario | Entrada |
MISO | Entrada | Definida por el usuario |
SCK | Definida por el usuario | Entrada |
SS' | Definida por el usuario | Entrada |
Tabla. Sustitución de los pines del SPI