Puerto Serie: La norma RS-232C El puerto Serie Puerto Serie: La norma RS-232C Línea Telefónica Ordenador personal : DTE MODEM DCE Norma RS-232C: comunicaciones DTE DCE
Conceptos básicos: Modulación. Portadora Moduladora Modular significa alterar las características de una onda (portadora) con otra onda Onda modulada en amplitud
Modulación en frecuencia Portadora Moduladora Modular significa alterar las características de una onda (portadora) con otra onda Modulación en frecuencia
RS-232C Especificaciones mecánicas: Conector estándar Macho para el DTE (PC) Hembra para el DCE (modem) Especificaciones Eléctricas: Niveles de Tensión y corriente +15 V +5V -5 V -15V 1 1 Emisor Receptor 2 V Corriente máxima: 0.5 A
Funciones de las señales Dos canales de transmisión Concepto de portadora
Diferencia entre CTS y DSR: Algunas aclaraciones Diferencia entre CTS y DSR: CTS es una respuesta a RTS que indica que el modem está listo; útil cuando el modem es half-duplex, sin sentido en full-duplex DSR se activa cuando el modem consigue conectar, establecer la comunicación Normalmente, no se utilizan los 25 pines; de hecho, se aplica la comunicación serie entre dos equipos que no son DTE y DCE, (dos PCs, etc). Hay diversos tipos de conexión, que no siguen la norma en absoluto: modem-null, etc 7 7 2 3 4 5 6 20 2 3 4 5 6 20
El puerto serie en el PIC: transmisión RC6/TX/CK TXIF=0 “invisible” Importante: TRISC6=0 y TRISC7 = 1 y RCSTA7=1 Formato: NRZ,1 bit de start,8 ó 9 bits de datos, 1 bit de stop. Se transmite (recibe) el LSB primero Síncrono o Asíncrono: nos centramos en este último TRMT se pone a uno cuando el TSR se vacía. No tiene interrupción asociada; si es preciso, debe ser consultado (polling)
Pasos para realizar la transmisión Inicializar el registro SPBRG, generador de baudios Habilitar el modo asíncrono (SYNC=0 en TXSTA y SPEN=1 en RCSTA) Si queremos interrupciones, habilitar TXIE en el PIE1 Si queremos 9 bits, poner a uno TX9, en TXSTA Habilitar TXEN, con lo que TXIF=1 (TXREG vacío) Si nueve bits, escribir TX9D, en TXSTA Cargar TXREG , así TXIF=0 y comienza la transmisión
Es preciso cargar el registro SPBRG con un valor, para seleccionar baudios. Está tabulado en función del reloj.
Bits asociados al generador de baudios Bits asociados a la transmisión serie
Con CREN=1, en RCTSA, se habilita la recepción Si se tienen 9 bits, RX9=1
Utilización del 9º bit para el direccionamiento de esclavos: El maestro puede enviar información a cualquiera de sus esclavos. Primero le envía su dirección, RX9D=1 y ADDEN=1. Entonces, el esclavo provoca una interrupción y se vuelca el contenido de RSR al buffer de recepción. Tras la interrupción, el esclavo mirará a ver si coincide con su dirección. Si lo es, poner ADDEN=0 para recibir los datos del maestro.
Pasos para realizar la recepción Inicializar el registro SPBRG, generador de baudios Habilitar el modo asíncrono (SYNC=0 en TXSTA y SPEN=1 en RCSTA) Si queremos interrupciones, habilitar RCIE en el PIE1 Si queremos 9 bits, poner a uno TX9, en TXSTA Para detectar dirección, ADDEN=1 Se habilita la recepción con CREN=1 Tras la recepción, RCIF=1 y la interrup. (si se habilitó)
Pasos para realizar la recepción Se lee el registro RCSTA Leer los 8 bits de RCREG para ver si el dispositivo ha sido direccionado Si hubo error, CREN=0 Si ha sido direccionado, poner ADDEN=0 para recibir la información
REGISTRO RCSTA
Registros que intervienen en la recepción asíncrona