C/Visual C - Problemas con el serial com

 
Vista:

Problemas con el serial com

Publicado por Iván (15 intervenciones) el 20/04/2001 15:34:00
Estoy realizando una aplicacion para con C para un ordenador de mano con SO MS-DOS. Este ordenador tiene una Nokia CardPhone 2.0 que es un modem con linea incorporada(como un movil con modem incorporado) conectada a un puerto PCMCIA. Mi problema es que necesito enviar comandos AT y recoger la respuesta a los commandos (por ejemplo leer mensajes SMS) a la Nokia por dicho puerto pero sin saber que COM es sino dandole la irq y la base (por ejemplo irq=5 i base=220).
Lo que necesito es codigo en C que pueda realizar estas funciones (ya dispongo de una libreria propia pero no lee bien del puerto)

Gracias por la ayuda.
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
Imágen de perfil de Alejandro

Envío de comandos AT y recepción de respuestas desde un módem Nokia CardPhone 2.0 en MS-DOS

Publicado por Alejandro (913 intervenciones) el 23/09/2024 20:20:13
Lamentablemente, el sistema operativo MS-DOS no proporciona una interfaz estándar para acceder directamente a los puertos PCMCIA y enviar comandos AT a un módem. Sin embargo, puedes intentar utilizar una biblioteca de terceros que proporcione funciones para acceder a los puertos y enviar comandos AT.

Una biblioteca popular que puedes considerar es "Turbo C Serial Library" (TCSL). Esta biblioteca proporciona funciones para acceder a los puertos serie en MS-DOS y enviar/recibir datos. Puedes encontrar más información y descargar la biblioteca desde el siguiente enlace: https://github.com/sergev/tcsl

Una vez que hayas descargado la biblioteca, puedes utilizarla en tu programa de la siguiente manera:

1. Incluye los archivos de encabezado de la biblioteca en tu programa:

1
#include "tscl.h"

2. Inicializa la biblioteca y abre el puerto PCMCIA utilizando la función `ts_open()`:

1
2
3
4
5
int port = ts_open(irq, base); // Reemplaza 'irq' y 'base' con los valores correspondientes
if (port == -1) {
    printf("Error al abrir el puerto PCMCIA\n");
    return 1;
}

3. Envía comandos AT al módem utilizando la función `ts_puts()`:

1
ts_puts(port, "AT\r"); // Reemplaza "AT\r" con el comando AT que deseas enviar

4. Lee la respuesta del módem utilizando la función `ts_gets()`:

1
2
3
char response[256];
ts_gets(port, response, sizeof(response));
printf("Respuesta: %s\n", response);

5. Cierra el puerto utilizando la función `ts_close()`:

1
ts_close(port);

Recuerda que estos son solo ejemplos básicos y deberás adaptar el código según tus necesidades específicas. Asegúrate de leer la documentación de la biblioteca TCSL para obtener más información sobre las funciones disponibles y cómo utilizarlas correctamente.

Espero que esta información te sea útil para enviar comandos AT y recibir respuestas desde la Nokia CardPhone 2.0 en MS-DOS utilizando C.

¡Buena suerte con tu aplicación, Iván!
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