Placa de expansión para Placa de expansión para ComunicacionesComunicaciones
CommunicationBoardTaskForce
ObjetivoObjetivo
Dotar al KIT de practicas con cierta capacidad para comunicarse con otros dispositivos, con enlaces punto a punto o multipunto.
DescripciónDescripción
Diseñar un módulo de expansión que
facilite la comunicación entre nuestro
microprocesador y otros dispositivos
periféricos o microprocesadores.
– Enlace serie RS-232 punto a punto– Enlace serie RS-485 multipunto– Enlace paralelo Centronics
Qué es necesario ?Qué es necesario ?
Facilitar el acceso del microcontrolador a
todos los puertos de comunicaciones.
(MAPEO EN MEMORIA)
Adaptar los niveles eléctricos para todos
los interfaces.
Generar y coordinar las señales de control
que requiere cada uno de los dispositivos
Estado inicialEstado inicial
En el kit de dispone de:
– Un display y un teclado integrados.
– Una expansión de los buses del
microprocesador que incorpora las lineas:
• Parte baja del bus de direcciones A0 - A7
• Bus de datos D0 - D7
• /RD, /WR,RESET,PER1,INT0,INT1,P10..P17, T0, T1,
VCC, GND, GNDP y 12VNR
Esquema electrónico kit PrácticasEsquema electrónico kit Prácticas
Quién se encargará de todo ?Quién se encargará de todo ?
Lectura/escritura del C a interfaces– UART 8250– PIA 6821
Adaptar niveles de tensión– Driver MAX222– Driver LT1785
Generar señales de control– PAL– Lógica combinacional
Esquema de la nueva placaEsquema de la nueva placa
Lógica de controlLógica de control
CommunicationBoardTaskForce
Comunicación Comunicación C - InterfacesC - Interfaces
UART 8250Universal Asynchronous Receiver/TransmitterEl 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 8250UART 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 8250UART 8250
Patillaje:1:8 Bus de Datos9 Reloj del receptor10 Entrada serie11 Salida serie12 Chip Select 013 Chip Select 114 Chip Select 215 Reloj del transmisor16 Entrada de reloj externo17 Salida del reloj con F. ref.18 Escritura de CPU (negada)19 Escritura de CPU20 Toma de tierra
21 Orden de lectura de CPU22 Orden de lectura de CPU invert23 Indica que la CPU esta leyendo24 Indica que esta lista para Tx25 Fija los valores de A0..A226..29 Bus de direcciones A2..A030 Salida de Interrupciones32 Request to send33 Data Terminal Ready35 Reset principal36 Clear To Send37 Data Set Ready38 Data Carrier Detect39 Ring Indicator40 VCC = +5 Volts
Mapeo en memoriaMapeo en memoria
CommunicationBoardTaskForce
UART 8250UART 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 8250UART 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 CA0 A0A1 A1A2 A2Si 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 Mapeo de los registros de la UARTUART
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 8250UART 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-232RS-232
IntroducciónIntroducción
HistoriaUtilidadEspecificacionesDrivers
HistoriaHistoria
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.
UtilidadUtilidad
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)
EspecificacionesEspecificaciones
Mecánicas: ISO2110Funcionales V.24 Eléctricas V.28
Especificaciones Funcionales Especificaciones Funcionales V.24V.24Define una interficie de
comunicación.Punto a puntoHalf Duplex/Full DuplexSíncrono/AsíncronoConexión Série
Especificaciones eléctricas V.28Especificaciones eléctricas V.28
Señalización Digital
Niveles eléctricos:– Datos:
• 1 lógico: -15V -3• 0 lógico: 3 V 15
– Control:• ON: 3 V 15• OFF:-15 V -3
DriversDrivers
MAXIM 222– Adapta Pulsos TTL a los niveles eléctricos del V.28
RS-485RS-485
IntroducciónIntroducció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ónIntroducció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ónIntroducció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 requeridasEspecificaciones 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 requeridasEspecificaciones 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 +120 mA
IIN a -7V-0.8 mA
IIN entre -3V y -70 mA
Topologías (bus)Topologías (bus)
RS-485 está definido como un sistema en bus multi-punto. Aunque existen otras configuraciones.
Topologías (estrella)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.
EnlaceEnlace
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ónTerminación
El standard define una terminación del bus en paralelo de 120
Se asume que la impedancia característica del cable está en el rango de ZO = 100a 120
Esta no es la única implementación posible, pero si la más óptima.
Consideraciones finalesConsideraciones 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 LT1785Driver 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)
CENTRONICSCENTRONICS
Dispositivo RS-232 completoDispositivo RS-232 completo
Top Related