tienen distinto potencial (más fácil si están alejados)
Tema 4: Serie
Especif icac ión f uncional V. 2 4 asíncr ona DTE
DCE
Transmisión de Datos
TxD (2)
TxD (2)
Recepción de Datos
RxD (3)
RxD (3)
Request To Send
RTS (4)
RTS (4)
Clear to Send
CTS (5)
CTS (5)
Data Carrier Detected
DCD (8)
DCD (8)
Data Terminal Ready
DTR (20)
DTR (20)
DSR (6)
DSR (6)
RI (22)
RI (22)
GND (7)
GND (7)
1 s e r o d a t u p m o C e d s e d e R a c i t á m r o f n I e d d a t l u c a F
E T D l e d a t s i v e d o t n u p l e e d s e d s e r b m o N
Data Set Ready Ring Indicator
V P U
Ground
Bloque 3 Tx/Rx
Bloque 2 Ctl. flujo
Bloque 1 Conexión
Tema 4: Serie
Pr ot ocolo RT S/ CT S 1 s e r o d a t u p m o C e d s e d e R
DTE
DCE
TXD RXD GND
TXD RXD GND
RTS CTS DCD
RTS CTS DCD
DTR DSR RI
DTR DSR RI
DCE
DTE
a c i t á m r o f n I e d d a t l u c a F V P U
RTC Red Telefónica Conmutada Asumimos el caso peor: canal telefónico gestionado en modo SEMI-DUPLEX
Tema 4: Serie
Conexión Null Modem 1 s e r o d a t u p m o C e d s e d e R
DTE
DTE
TXD
TXD
RXD
RXD
GND
GND
RTS
RTS
CTS
CTS
DCD
DCD
DTR
DTR
DSR
DSR
RI
RI
a c i t á m r o f n I e d d a t l u c a F V P U
Full Duplex
Tema 4: Serie
Cont r ol de f luj o con RS2 32 1 s e r o d a t u p m o C e d s e d e R a c i t á m r o f n I
m
Hardware Ø
m
ð
uso de las líneas RTS/CTS
la línea CTS indica al DTE si puede transmitir o no (caso anterior)
Software ð protocolo XON/XOFF 1. cuando el receptor está listo para recibir datos, envía al transmisor la marca XON 2. si el transmisor transmite demasiado rápido para el receptor, entonces envía la marca XOFF 3. el transmisor envía nuevos datos solo se recibe la marca XON
max
e d d a t l u c a F V P U
XOFF
r e f f u b
XON 0
Tema 4: Serie
Pr ot ocolo X on - - X of f 1 s e r o d a t u p m o C
DTE TXD
DCE ….9876 ….. 54321 .....
TXD
e d s e d e R a c i t á m r o f n I
RXD GND
XON…….XOFF….XON….XOFF
RXD GND
e d d a t l u c a F
XOFF
V P U
XON Vacío
BUFFER
Tema 4: Serie
Terminales K
1 s e r o d a t u p m o C
Terminal FULL Duplex
RS232 K K
e d s e d e R
ECHO ON
a c i t á m r o f n I
K
e d d a t l u c a F V P U
RS232
Terminal HALF Duplex
K
ECHO OFF
Tema 4: Serie
Emulador de T er minal 1 s e r o d a t u p m o C e d s e d e R
void main() { int fin, cod, ch; int halfduplex = ... clrscr(); openrs(COM1); fin = 0;
//puerta RS232 cod = getrs(); if (cod != -1) putchar(cod) if (cod==27) fin = 1; }
a c i t á m r o f n I e d d a t l u c a F V P U
while (fin==0) { //Teclado if (kbhit()) { ch = getchar(); if (ch==27) fin=1; if (halfduplex) putchar(ch); putrs(ch); }
closers(); clrscr(); }
Tema 4: Serie
1 s e r o d a t u p m o C e d s e d e R a c i t á m r o f n I e d d a t l u c a F V P U
Práctica 2.1: Con un programa sencillo de comunicaciones (PROCOMM+, HiperTerminal de Windows,...) a) Manejo y configuración de la puerta b) Conectar con el PC vecino y probar a Tx/Rx Interes a probar: 3 hilos vs. 9 hilos full-duples vs half-duplex (eco, no-eco) manejo e interpretación de los probadores de RS232 Práctica 2.2: Programación de la puerta: Desde un programa en C/C++, programar un emulador de terminal sencillo. Puente COM1 ßà COM2