Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Transmisin Simplex
Transmisin en un solo sentido
Estacin Remota
Estacin Local
Estacin Remota
Estacin Local
Estacin Remota
Estacin Local
Protocolos
Son reglas de dilogo entre entidades. Nos permiten especificar interfaces. Se necesitan varios protocolos a distintos niveles para mantener una comunicacin entre sistemas. Se tiende a la utilizacin de estndares en toda clase de comunicacin.
B
Aplicacin Presentacin Sesin Transporte Red Datos Fsica
Interfaz RS-232
Comunica una computadora (DTE) con un modem (DCE). Define cables, conectores, seales, etc. Constituye los puertos serie de las PCs Se usa para disciplina de transferencia de datos, simplex y full duplex.
Convertidores TTL/RS-232
Para convertir seales RS-232 a TTL y viceversa se usa un integrado caracterstico, el MAX-232. Solamente con alimentacin de 5 V. este circuito es capaz de generar seales con el nivel RS-232 y convertirlas en forma segura a TTL. Contiene dos lneas de transmisin y dos de recepcin.
MAX-232
Comunicacin Simplex
Desde un DTE a un DCE
Transmisin Simplex
Con handshaking por hardware, si DSR es positivo es posible transmitir, NO en caso contrario.
Transmisin Simplex
Incluyendo dos lneas de handshaking por hardware.
Se puede transmitir si CTS y DSR son positivos
Recepcin Simplex
El handshaking es del DTE al DCE
DTE
Conector DB9
Los nmeros de pin indicados hasta ahora corresponden al conector DB25. Para el conector DB9 son:
Desde el DTE
1 2 3 4 5 6 7 8 9 CD RxD TxD DTR SG DSR RTS CTS RI
Conector DB-9
Lado cable
Conector DB-9
1 5
Lado PC
Transmisin de Caracteres
Los caracteres que en la computadora circulan en paralelo, de a uno o ms bytes, deben ser transformados en una cadena de bits para ser transmitidos por un puerto serie. A diferencia del puerto paralelo, en el puerto serie los caracteres viajan de un bit por vez, los que son encolumnados en forma asncrona.
7
Stop
Debe detectar 1
Tiempo
Error de Trama
Receptor A
1
Stop
Start Receptor B
Tiempo
5, 6, 7, 8 N, O, E, M, S 1, 1.5, 2
8N1
Definiciones
Break: Es bajar la lnea por ms tiempo que la mxima cantidad de espacios acumulables, pretende llamar la atencin del sistema (p.ej. cuando est tildado). Baudios: Son la medida de sealizacin elctrica fundamental en la lnea. Si la onda posee dos estados la cantidad de bits por segundo es igual a la de baudios.
Reconocimientos
Tenemos reconocimientos (handshaking) por hardware y por software. Hardware: Los DCE usan DSR (Data Set Ready) como lnea principal de handshaking, CTS (Clear To Send) es la lnea secundaria. Los DTE usan DTR como lnea principal y RTS como lnea secundaria.
Start do sinfin do while NOT Carcter para enviar end-do reset contador timeout while NOT timeout do if DSR alto if CTS alto Enviar carcter if EOF Levanta bandera EOF return( OK ) end-if else incrementa contador timeout end-if else incrementa contador timeout end-if end-while if timeout > maximo return( error de timeout ) end-if end-do End
Transmisin
Recepcin
paridad
Sin Impar Par 00 10 01 11
bits de datos
siete ocho 10 11
Palabra de Inicializacin
abyte = OR bit a bit de lo siguiente:
0x02 = 7 data bits 0x03 = 8 data bits 0x00 == no parity 0x08 == odd parity 0x18 == even parity 0x00 0x40 0x80 0xc0 110 300 1200 4800 bps bps bps bps 0x20 150 bps 0x60 600 bps 0xa0 2400 bps 0xe0 9600 bps 0x00 = 1 stop bit 0x04 = 2 stop bits
Palabra de Inicializacin
Ejemplo:
abyte = 0x8B = (0x80 | 0x08 | 0x00 | 0x03)
El puerto se configura a:
1200 baud Paridad impar 1 bit parada 8 bits datos 0x80 0x08 0x00 0x03 0x8B
Funcin en C de Microsoft
unsigned _bios_serialcom( unsigned cmd, unsigned puerto, unsigned data);
Cambia el nombre de los parmetros y su ubicacin pero son los mismos que los vistos en el caso anterior.
Registros de la UART
Control: Recibe comandos de la CPU Estado: Informa a la CPU el estado de la UART Buffer: Mantiene caracteres entrantes y salientes en la transmisin
Registros de la UART
Line Control Register Modem Control Register Interrupt Enable Register Baud Rate Divisor Latches Line Status Register Modem Status Register Interrupt Identification Reg. Receive Buffer Register Transmitter Holding Register
Control
Estado
Buffer
DLAB A2 A1 A0 Buffer bus de datos Buffer del Receptor Retencin Transmis. Latch LSB Divisor Bus de datos internos REGISTROS DE LA UART Latch MSB Divisor Habilitac. Interrupc. 0000
0000
1000 1001
0001
DLAB A2 A1 A0 Identifica Interrupc. Control de lnea Control de Modem Bus de datos internos REGISTROS DE LA UART Estado de Lnea Estado de modem X010
X011
X100
X101 X110
Registros de Control
Line Control Register: Se usa para especificar los parmetros de comunicaciones.
Bit 0 1 2 3 4 5 6 7 Word length LSB Word length MSB Stop bits Parity enable Parity select Parity one Break 000 001 011 00 10 0 5 7 1 01 11 1 101 111 1 6 8 2 mark space on
Temporizacin de la UART
La frecuencia del reloj de temporizacin de la UART es de 1.8432 MHz. Esta frecuencia se divide en forma fija por 16, lo que determina la velocidad mxima de transmisin de 115200 bps. Mediante dos registros se controla el divisor de esta frecuencia que nos permite establecer las distintas velocidades de transmisin.
Temporizacin de la UART
Uno de los registros es el DLL (Divisor Latch Less significant byte) y el otro es el DLM (Divisor Latch Most significant byte) Para velocidades que superan los 300 bps ya no se utiliza el registro ms significativo, por lo que en la actualidad slo se configura el registro DLL. La tabla siguiente muestra: valor del divisor versus velocidad de transmisin.
Temporizacin de la UART
Baud Rate 300 1200 2400 4800 9600 14400 19200 38400 57600 Decimal 384 96 48 24 12 8 6 3 2 Hex 180 60 30 18 0C 08 06 03 02 MSB 1 0 0 0 0 0 0 0 0 LSB 80 60 30 18 0C 08 06 03 02
Siempre en 0
Datos listos
Error de Trama
Error de sobreescritura
Modem listo
Siempre en 0
1 1 0 0 1 0 1 0
Estado de lnea Datos Disponibles Registro sostn de transmisin vaco Estado de Modem (Entrada RS-232)
Interrupcin pendiente
D0-D7
B U S
INTR RESET A0 A1 MR
Controlador EIA
1.8432 MHz
Conector
RS-232
C P U
8250
BAUD OUT RCLK
Chips UART
Averiguacin ms completa:
setserial -a /dev/ttySx (x = 0, 1, 2, 3)
/dev/ttyS0, Line 0, UART: 16550A, Port: 0x03f8, IRQ: 4 Baud_base: 115200, close_delay: 50, divisor: 0 closing_wait: 3000 Flags: spd_normal skip_test
Acciones opcionales:
TCSANOW - el cambio ocurre inmediatamente TCSADRAIN - el cambio se produce no bien termina la salida actual CTSAFLUSH - el cambio se produce no bien termina la salida actual toda la entrada recibida pero no leida se descarta antes del cambio.
Ejemplo 7E1:
struct termios opciones; opciones.c_cflag |= PARENB; opciones.c_cflag &= ~PARODD; opciones.c_cflag &= ~CSTOPB; opciones.c_cflag &= ~CSIZE; opciones.c_cflag |= CS7; // // // // // Con paridad Paridad par 1 bit de parada \ / 7 bits de datos
Conmutar un bit:
resultado ^= TIOCM_RTS;
U01.c
Funcin fcntl()
Ej. de Salida
Antes de configurar: /dev/ttyS0: 8N1 9600 bps Despus de configurar: /dev/ttyS0: 8N1 2400 bps
Ejemplo:
ioctl(fd, TIOCSERGETLSR, (int) &resultado); fd: entero descriptor de archivo TIOCSERGETLSR: requerimiento al dispositivo resultado: puntero void a rea de memoria
U03.c
Observar la funcin kbhit(), que emula su homnima de Borland y Turbo C, esta funcin no existe en forma nativa en Unix
U06.c
Caja de Conexiones
Parte Anterior 2 3 4 5 6 7 8 20 22 +
20
22
Caja de Conexiones
Parte Posterior
13 1 Conector Hembra 25 1 14 13 Conector Macho
14
25
Norma RS-449
Bsicamente es similar al RS-232, pero permite ms distancia y tiene menos modulacin cruzada. Describe las especificaciones mecnicas y los circuitos, pero no las seales elctricas. Usa un conector DB-37, ya que permite circuitos balanceados y no balanceados.
Norma RS-449
Las especificaciones elctricas estn cubiertas por las normas RS-422-A y RS-423-A, para circuitos balanceados y no balanceados.