Comunicación ?C – Interfaces UART 8250 Universal Asynchronous Receiver/Transmitter El ?C puede escribir en los registros de la UART como si accediera a memoria(mapeo) y la UART se encarga de transmitirlos en serie por el cable. La UART recibe bytes en serie por el puerto RS-232 y los almacena en un registro: el ?C puede leer esos bytes como si accediera a memoria. Puede enviar/recibir en serie a diferentes tasas: 300,9600,28800bps…
UART 8250 Tiene dos tipos de registros: Control: IER(Interrupt Enable Register) IIR (Interrupt Identification Register) LCR (Line Control Register) MCR (Modem Control Register) LSR (Line Status Register) MSR (Modem Status Register SCR (Scratch Register) Datos: RBR (Receiver Buffer Register) THR (Transmitter Holding Register) Reloj: DLL (Divisor Latch LSB) DLM (Divisor Latch MSB)
UART 8250 Patillaje: 1:8 Bus de Datos 9 Reloj del receptor 10 Entrada serie 11 Salida serie 12 Chip Select 0 13 Chip Select 1 14 Chip Select 2 15 Reloj del transmisor 16 Entrada de reloj externo 17 Salida del reloj con F. ref. 18 Escritura de CPU (negada) 19 Escritura de CPU 20 Toma de tierra 21 Orden de lectura de CPU 22 Orden de lectura de CPU invert 23 Indica que la CPU esta leyendo 24 Indica que esta lista para Tx 25 Fija los valores de A0..A2 26..29 Bus de direcciones A2..A0 30 Salida de Interrupciones 32 Request to send 33 Data Terminal Ready 35 Reset principal 36 Clear To Send 37 Data Set Ready 38 Data Carrier Detect 39 Ring Indicator 40 VCC = +5 Volts
Mapeo en memoria SubCommunicationBoardTaskForce
UART 8250 Señales de control Cuando accedemos a posiciones de memoria entre 1000h y 1FFFh, la PAL del circuito activa la linea PER1, que es quien se encargara de activar la UART para lectura o escritura del ?C. Para permitir lectura o escritura en UART, CS0..2=110 por tanto: CS0=PER1 CS1=PER1 CS2=PER1
UART 8250 MAPEO DE LA MEMORIA Tenemos 3 bits de direcciones en la UART, por tanto solo necesitamos 3 bits del bus de datos del ?C para mapear la UART y poder así acceder a sus diversos registros. Conectaremos: UART ? ?C A0 A0 A1 A1 A2 A2 Si el bit 7 del Line Control Register és 1, entonces 1000h y 1001h acceden a los registros que indican la velocidad de Tx y Rx: DLL y DLM
Mapeo de los registros de la UART Lectura/Escritura DLL: Base + 0h (DLAB=1) IER: Base + 1h (DLAB=0) DLM: Base + 1h (DLAB=1) LCR: Base + 3h MCR: Base + 4h LSR: Base + 5h MSR: Base + 6h SCR: Base + 7h Lectura RBR: Base + 0h (DLAB=0) IIR: Base + 2h Escritura THR: Base + 0h (DLAB=0) FCR: Base + 2h
UART 8250 Interrupciones: El Kit de prácticas tiene dos interrupciones: INT0 y INT1. INT1 está conectada a los interruptores. Utilizaremos INT0 para que la UART pueda avisar al ?C de que ha recibido nuevos datos. El programador deberá encargarse de mirar que dispositivo generó la interrupcion y cual es la causa. El registro IIR indica la interrupciones pendientes, y LSR indica si hay nuevos datos.
RS-232
Introducción Historia Utilidad Especificaciones Drivers
Historia El RS-232 nació en el 1962. Se desarrolló para interconectar equipos. RS-232 es un conjunto de especificaciones mecánicas, eléctricas y funcionales.
Utilidad TTL útil para comunicaciones muy muy cercanas, pero muy sensible al ruido. RS-232 más resistente al ruido. Permite comunicaciones a mayor distancia Ejemplo. Ordenador-módem (sigue siendo pequeña)
Especificaciones Mecánicas: ISO2110 Funcionales V.24 Eléctricas V.28
Especificaciones Funcionales V.24 Define una interficie de comunicación. Punto a punto Half Duplex/Full Duplex Síncrono/Asíncrono Conexión Série
Especificaciones eléctricas V.28 Señalización Digital
Niveles eléctricos: Datos: 1 lógico: -15?V ? -3 0 lógico: 3 ? V ? 15 Control: ON: 3 ? V ? 15 OFF:-15 ? V ? -3
Drivers MAXIM 222 Adapta Pulsos TTL a los niveles eléctricos del V.28
RS-485
Introducción Presentaremos el standard EIA 485 para transmisión multipunto diferencial.
Comúnmente se denomina RS-485, pero su nombre oficial es el de EIA-485, que refleja el nombre del comité que lo estandarizó en 1983.
Está previsto que se revise en breve para redenominarse en TIA/EIA-485-A.
Introducción La transmisión diferencial es ideal para transmitir a altas velocidades sobre largas distancias y a través de canales ruidosos. Esto reduce los ruidos que aparecen por los voltajes en la línea de transmisión. El standard TIA/EIA-422-B define la transmisión diferencial desde un único driver a múltiples receptores. RS-485 permite múltiples drivers posibilitando una configuración multipunto.
Introducción Al ser un standard bastante abierto permite muchas y muy diferentes configuraciones y/o utilizaciones.
Pero todas ellas deben seguir unas especificaciones obligadas.
Especificaciones requeridas Interface Diferencial (Balanceado) Multipunto Alimentación única a +5V Rango de bus -7V to +12V Hasta 32 Unidades de carga (Transceivers) 10 Mbps máximo (@12 metros) 1200 metros de longitud máxima (@100 kbps)
Especificaciones requeridas Cuatro puntos són los que definen una unidad de carga (driver). Recev. Input current (IIN ) a +12V ?1 mA IIN entre +5V y +12?0 mA IIN a -7V³ -0.8 mA IIN entre -3V y -7£ 0 mA
Topologías (bus) RS-485 está definido como un sistema en bus multi-punto. Aunque existen otras configuraciones.
Topologías (estrella) Otra configuración es en estrella, aunque esta no es muy recomendable por la longitud del cable y por lo tanto por sus reflexiones.
Enlace El enlace es la distancia desde el dispositivo hasta el bus, o de la resistencia de terminación al bus. Los enlaces al bus deben ser lo más cortos posibles. the stubs as short as La longitud máxima no está definida en el standard, pero longitudes largas tienen un impacto negativo en la calidad de la señal.
Terminación El standard define una terminación del bus en paralelo de 120W. Se asume que la impedancia característica del cable está en el rango de ZO = 100W a 120W. Esta no es la única implementación posible, pero si la más óptima.
Consideraciones finales RS-485 está definido como half-duplex, pero diferentes aplicaciones y configuraciones en paralelo pueden hacerlo full-duplex. Todas estas aplicaciones en paralelo requieren de la implementación más a fondo del protocolo de comunicaciones.
Driver Rs-485 LT1785 Alimentación ….. ..18V Receiver Enab input Voltage …. -0,3V a 6V Driver Enab input Voltage . …. -0,3V a 6V Driver input Voltage . …. -0,3V a 18V Receiver input Voltage . . -60V a 60V Driver Output Voltage …. -60V a 60V Receiver Output Voltage . -0,3V a (Vcc+6V)
CENTRONICS
Dispositivo RS-232 completo
Página anterior | Volver al principio del trabajo | Página siguiente |