MANEJADOR
RS232
Adai Bujeda Ateca
Guayasén González Santiago
© Universidad de Las Palmas de Gran Canaria
,Indice
Introducción ___________________________________________________________________3
Protocolo RS-232-C______________________________________________________________5
Descripción de la UART __________________________________________________________6
Relación con TTY ______________________________________________________________11
Estructura RS-232 ______________________________________________________________13
Constantes____________________________________________________________________15
Macros ______________________________________________________________________17
Funciones ____________________________________________________________________18
rs_write(tp) _______________________________________________________________18
rs_echo (tp, c)______________________________________________________________26
rs_ioctl (tp) ________________________________________________________________28
rs_config (rs) ______________________________________________________________21
in_int(rs) ____________________________________________¡Error! Marcador no definido.
Rs_init (tp) ________________________________________________________________18
Rs_icancel (tp) _____________________________________________________________28
Rs_ocancel (tp) ____________________________________________________________28
Rs_read (tp) _______________________________________________________________26
Rs_ostart (rs) ______________________________________________________________26
Rs_break (tp) ______________________________________________________________29
Rs232_1handler (tp) ________________________________________________________29
Rs232_2handler (tp) ________________________________________________________30
line_int (rs) ________________________________________________________________34
modem_int (rs) ____________________________________________________________34
out_int (rs) __________________________________________¡Error! Marcador no definido.
Preguntas ____________________________________________________________________35
Anexo _______________________________________________________________________36
,Introducción
Este driver es el encargado la transmisión y recepción de datos a través de
los puertos serie del ordenador. Gracias a el se soporta la utilización de
terminales remotos o la conexión vía módem con otros ordenadores, entre
otras cosas. Incluye las funciones de control sobre los dispositivos hardware
encargados del manejo de las comunicaciones serie. En el caso de las
máquinas tipo IBM PC y compatibles (basadas en la familia de
microprocesadores intel), sobre las que se ejecuta el minix, la gestión de los
puertos RS-232 se realiza mediante las UARTs (Universal Asynchronous
Receiver-Transmitter, receptor-emisor asíncrono universal) 8250 y 16450.
El objetivo último de este driver es proporcionarnos un servicio de
comunicación básico mediante una línea RS-232, obviando todo lo referente
al hardware específico que estemos utilizando. Cualquier proceso que haga
uso de estas funciones (por ejemplo el tty.c) puede olvidarse de cuestiones
como la programación mediante puertos I/O de la UART, y centrarse en su
propio objetivo.
Con el objetivo de facilitar la comprensión del código, se ha incluido una
breve descripción de los controladores hardware, donde se detallan
principalmente los registros que definen el funcionamiento de los
dispositivos.
Un controlador de líneas serie consta, en general, de tres tipos de registros:
- Registros de datos. Generalmente son dos registros, uno de entrada y
otro de salida, donde se colocará o de donde se leerá la i
que estemos tratando.
- Registros de control. Permiten la programación de la interfase (elección
del modo síncrono/asíncrono, velocidad de transmisión Nº de bits de
stop, etc...)
, - Registros de estado. Este registro contendrá los indicadores de error que
se pueden haber producido, tanto en la recepción como en la
transmisión de datos.