C/Visual C - capturar inf de un puerto

 
Vista:

capturar inf de un puerto

Publicado por Rodrigo (1 intervención) el 13/03/2001 22:43:48
Por favor, Necesito saber que instrucciones hay que utilizar para obetener la información que llega por un subD de 9 contactos donde el contacoto 2 (Rx)es de recepción, el 3 (Tx) es de transmición y el 5 (GND) es tierra, todo esto es para hacer un prog que tome esta inf que llega por el conector y enviarla a un archivo.
Desde ya agradezco todas las ayudas posibles
Rodrigo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:capturar inf de un puerto

Publicado por Endos (143 intervenciones) el 13/03/2001 23:33:19
Puedes usar las interrupciones del BIOS para obtener el estado:

AH =0x 03
DX = numero de puerto (0x00-0x03) (0x00=COM1, 0x01=COM2, etc)
int 0x14

Devuelve en

AH:
Estado de la linea:
Bit(s) Descripcion
7 timeout
6 transmit shift register empty
5 transmit holding register empty
4 break detected
3 framing error
2 parity error
1 overrun error
0 receive data ready

AL:
estado del puerto:
Bit(s) Descripcion
7 carrier detect
6 ring indicator
5 data set ready
4 clear to send
3 delta carrier detect
2 trailing edge of ring indicator
1 delta data set ready
0 delta clear to send

En TurboC++ por ejemplo seria algo asi:

#define COM1 0x00
#define COM2 0x01

...
unsigned char EstadoLinea;
unsigned char EstadoPuerto;

_AH=0x03;
_DX=COM1;
geninterrupt(0x14);

EstadoLinea=_AH;
EstadoPuerto=_AL;

// Aqui el codigo para mirar cada bit.

...

Saludos,
Endos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar