Serie Sincrona En C

Páginas: 16 (3903 palabras) Publicado: 29 de septiembre de 2012
Lenguaje C aplicado a microcontroladores PIC

MCU Conversores A/D Registros despl.

EEPROM serie

LCD con SPI
Comunicación Serie Síncrona
©ATE-Universidad de Oviedo-Fernando Nuño

1

Lenguaje C aplicado a microcontroladores PIC

MÓDULO SSP (SYNCHRONOUS SERIAL PORT)
• Puerto Serie Síncrono: Interface de Comunicación Serie Síncrona • Pensado para comunicación con otrosMicrocontroladores o Periféricos: EEPROM serie (almacenamiento de datos no volátiles) Registros de Desplazamiento (expansión de entradas y/o salidas) Drivers de Displays (reducción de conexiones) Conversores A/D (digitalización externa de señales) .... • Modos de Operación posibles del módulo SSP: - SPI (Serial Peripheral Interface): Interface de Periféricos Serie
SPI: Es una Marca Registrada de MotorolaCorporation

- I2C (Inter-Integrated Circuit): Entre Circuitos Integrados
I2C: Es una Marca Registrada de Philips

Comunicación Serie Síncrona

©ATE-Universidad de Oviedo-Fernando Nuño

2

Lenguaje C aplicado a microcontroladores PIC

1.- Interface SPI en el módulo SSP
• Permite la transmisión y recepción síncrona simultánea de datos de 8 bits • Para la comunicación debe existir undispositivo Maestro (genera la señal de reloj) y uno o varios esclavos (reciben la señal de reloj) • En los microcontroladores PIC hay 3 pines asociados con la comunicación SPI: Salida Serie de Datos (SDO) Serial Data Output Entrada Serie de Datos (SDI) Serial Data Input Reloj de comunicación Serie (SCK) Serial Clock -> RC5 -> RC4 -> RC3

De manera adicional, hay un 4º pin que se puede utilizarcuando el microcontrolador se configura como dispositivo Esclavo: Selección de Esclavo (SS) Slave Select -> RA5

• La inicialización del Interface SPI se realiza mediante la configuración de los bits de control SSPCON y SSPSTAT

Comunicación Serie Síncrona

©ATE-Universidad de Oviedo-Fernando Nuño

3

Lenguaje C aplicado a microcontroladores PIC

Diagrama de Bloques del Módulo SSP enmodo SPI

Registro de Buffer (lectura/escritura) Entrada serie de bits Salida serie Registro de Desplazamiento de transmisión/recepción (no accesible)

Selección Esclavo

(opcional si es Esclavo)

Reloj de Entrada (Esclavo) Reloj de Salida (Maestro) Comunicación Serie Síncrona

©ATE-Universidad de Oviedo-Fernando Nuño

4

Lenguaje C aplicado a microcontroladores PICENVÍO/RECEPCIÓN SIMULTÁNEA Situación Inicial ESCLAVO SPI
SDI a0 a1 a2 a3 a4 a5 a6 a7 SDO SCK

MAESTRO SPI b0 b1 b2 b3 b4 b5 b6 b7 SDO
SDI

Reloj

SCK

Flanco 1 en reloj SCK MAESTRO SPI a7 b0 b1 b2 b3 b4 b5 b6 SDO
SDI

ESCLAVO SPI
SDI b7 a0 a1 a2 a3 a4 a5 a6 SDO SCK

Reloj

SCK

Comunicación Serie Síncrona

©ATE-Universidad de Oviedo-Fernando Nuño

5

Lenguaje C aplicado amicrocontroladores PIC

Situación Inicial MAESTRO SPI b0 b1 b2 b3 b4 b5 b6 b7 SDO
SDI

ESCLAVO SPI
SDI a0 a1 a2 a3 a4 a5 a6 a7 SDO SCK

Reloj

SCK

Flanco 8 en SCK MAESTRO SPI a0 a1 a2 a3 a4 a5 a6 a7 SDO
SDI

ESCLAVO SPI
SDI b0 b1 b2 b3 b4 b5 b6 b7 SDO SCK

Reloj

SCK

Situación Final Intercambiados los 8 bits de datos
Comunicación Serie Síncrona
©ATE-Universidad de Oviedo-FernandoNuño

6

Lenguaje C aplicado a microcontroladores PIC

• SSPSR (registro de desplazamiento) envía y recoge los bits simultáneamente • SSPBUF tiene doble función: para “cargar” el registro SSPSR para envío de datos y para “recoger” los datos recibidos en SSPSR SSPIF=0 por software SSPBUF SSPBUF b0 b1 b2 b3 b4 b5 b6 b7 SSPSR a4 a5 a6 a7 b0 b1 b2 b3
2.- SSPSR enviando/recibiendo

b0 b1 b2 b3b4 b5 b6 b7 SSPSR b0 b1 b2 b3 b4 b5 b6 b7
1.- Carga de SSPSR a través de SSPBUF

SSPBUF b0 b1 b2 b3 b4 b5 b6 b7 SSPSR a0 a1 a2 a3 a4 a5 a6 a7
3.- Completada recepción/envío
Comunicación Serie Síncrona

SSPIF=1

SSPBUF

a0 a1 a2 a3 a4 a5 a6 a7 SSPSR a0 a1 a2 a3 a4 a5 a6 a7
4.- SSPSR carga SSPBUF con recepción

©ATE-Universidad de Oviedo-Fernando Nuño

7

Lenguaje C aplicado a...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • C Lculo Integral Series
  • Nif Serie C
  • Serie De Maclaurin En Dev-C++
  • Nif Serie C
  • boletin serie c nif
  • Nif serie c
  • C. serie y paralelo
  • Boletines serie c

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS