MOD 12C [PIC16F877A]

Páginas: 29 (7208 palabras) Publicado: 23 de noviembre de 2013
MODO I2C

9.4

[PIC16F877A]

MODO I2C

El módulo MSSP en el modo I2C emplea totalmente las funciones del maestro y esclavo
(incluyendo el soporte de llamada general) y provee interrupciones en el inicio y parada de bits en
el hardware para determinar un bus libre (función multi-maestro). El MSSP implementa tanto el
modo estándar de especificación 7 bit como el de 10 bits dedireccionamiento.
Dos pines son usados para la transferencia de datos:
 Serial Clock (SCL) – RC3/SCK/SCL
 Serial Data (SDA) – RC4/SDI/SDA
El usuario debe configurar estos pines como entradas o salidas a través de los bits del TRISC.

FIGURA 9-7: MSSP DIAGRAMA DE BLOQUES (MODO I2C).
9.4.1 REGISTROS
El modulo MSSP tiene 6 registros para la operación I2C. Estos son:
 MSSP Registro de Control(SSPCON).
 MSSP Registro de Control 2 (SSPCON2).
 MSSP Registro de Estado (SSPSTAT).
 MSSP Buffer serie de transmisión/recepción (SSPBUF).
 MSSP Registro de desplazamiento (SSPSR) – no es accesible directamente.
 MSSP Registro de dirección (SSPADD).

MODO I2C

[PIC16F877A]

SSPCON, SSPCON2 y SSPSTAT son registros de control y estado en el modo de operación I2C. El
SSPCON y SSPCON2 sonregistros legibles y escribibles. Los seis bits mas bajos del SSPSTAT son
solo/lectura. Los dos bits superiores del SSPSTAT son lectura/escritura.
El registro SSPSTAT, que es sólo de lectura, contiene el estado de los datos a transferir. Esta
información incluye la detección de los datos bits de Start o Stop, indica si el byte recibido es un
dato o una dirección de 10 bits y si será leído oescrito.
El registro SSBUF es de lectura / escritura y en él se guardan los datos a transferir por el bus o del
que se leerán los datos recibidos. En el modo de transmisión los modos almacenados en este
registro se transfieren al registro SSPSR desde el cual saldrán en serie por la línea SDA. Los dos
registros forman un doble buffer que permiten que en recepción se “invierta” el sentido de losdatos; son recibidos en serie por el registros SSPSR y transferidos al SSPBUF cuando la recepción
finaliza al completarse un byte. Si se recibe otro byte sin que el anterior se haya leído, el bit SSPOV
(SSPCON) se pone a “1” para indicar que el byte recibido en el registro SSPSR se ha perdido.
El registro SSPADD, mantiene la dirección en el modo de 10 bits es necesario escribir el byte alto
dela dirección (1111 0A9 A8 =) según el byte de menor peso (A7:A0).

SSPSTAT: MSSP REGISTRO DE ESTADO (MODO I2C) (DIRECCIÓN 94h)

Bit 7

SMP: Fase de datos de entrada SPI.
Modo I2C Maestro o Esclavo.
1= Deshabilita control de variaciones para velocidad estándar (100 KHz y 1 MHz).
0=Habilita control (400 KHz).

Bit 6

CKE: Selección del flanco de reloj SPI.
Modo I2C Maestro o Esclavo.1= Niveles de entrada de acuerdo a SMBUS.
0= Niveles de entrada conforme a I2C.

Bit 5

D#A: Bit Datos/Direcciones (solo en modo I2C).
1= Indica que el último byte recibido o transmitido es un dato.
0= Indica que el último byte recibido o transmitido es una dirección.

MODO I2C

Bit 4

[PIC16F877A]

P: Bit de Stop (solo en modo I2C. Ese bit es borrado cuando se deshabilita elmodulo SSP, o
cuando el último bit Start es detectado, SSPEN es borrado).
1= Indica que se ha detectado un bit de Stop (ese bit es “0” en RESET).
0= Bit de Stop no detectado.

Bit 3

S: Bit de Start (solo en modo I2C. Ese bit es borrado cuando se deshabilita el modulo SSP, o
cuando el último bit Start es detectado, SSPEN es borrado).
1= Indica que se ha detectado un bit de Start (ese bit es“0” en RESET).
0= Bit de Start no detectado.

Bit 2

R#W: Bit de información lectura/escritura (solo en modo I2C).
1= Lectura
0= Escritura
Modo esclavo
1= Lectura
0= Escritura
Modo maestro
1= Transmisión en progreso.
0= Transmisión no en progreso.

Bit 1

UA: Activación de dirección (solo en modo I2C 10-bits).
1= Indica que es necesario actualizar la dirección en el registro...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Pic16f877a
  • pic16f877a
  • Pic16f877a
  • pic16f877a
  • Curso De Pic16F877
  • Interrupciones PIC16F877A
  • Pic16f877a calculadora
  • Pic16f877a mikroc

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS