/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

Ayuda para un principiante

 
      Índice del Foro elrincondelc.com -> Principiantes C/C++
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
minixino



Registrado: 24 Ago 2007
Mensajes: 4

MensajePublicado: 24/08/2007 5:16 am
Título: Ayuda para un principiante

Estoy empezando a hacer pinitos con el compilador lcc-win32 y para ello he copiado el siguiente código de internet que se supone trabaja con el puerto serie

#include <conio.h>

int main() {
int valor=0xFA, id_puerto=0; /* Puerto de serie 0 */

outportb( id_puerto, valor );
clrscr();
cprintf( "Ejemplo de \"outport\"\r\n\r\n" );
cprintf( "Escribimos 1 word (2 bytes) al puerto %d: 0x%X.\r\n", id_puerto, valor );
cprintf( "Pulsa una tecla para continuar...\r\n" );
getch();

return 0;
}


El caso es que, a pesar de su sencillez, el compilador me devuelve el error que os adjunto:

Wedit output window build: Fri Aug 24 14:53:22 2007
Error c:\temp\x10\sistema mas sencillo\x10massencillo.c 6 undefined reference to _outportb
c:\lcc\bin\make.exe
Compilation + link time:0.1 sec, Return code: 1

¿Sabeis que mas tengo que hacer?

Gracias,
Volver arriba
digies



Registrado: 18 Nov 2005
Mensajes: 241
Ubicación: Cono Sur

MensajePublicado: 24/08/2007 7:40 am
Título:

Hola

El error se debe a que tu compilador -en este caso el lcc-win32 - no soporta la biblioteca conio.h que es propio de los compiladores de Borland.

Salu2!
Volver arriba
rir3760



Registrado: 01 Oct 2004
Mensajes: 3657
Ubicación: Mexico

MensajePublicado: 24/08/2007 7:58 am
Título:

Para ser mas exactos Lcc-win32 si incluye soporte de la biblioteca conio de Borland (el suficiente para seguir el curso de Gorka Urrutia) pero este es parcial y no incluye las funciones para el manejo de puertos.

Un saludo
_________________
The capacity to learn is a gift;
The ability to learn is a skill;
The willingness to learn is a choice.
--
Rebec of Ginaz
Volver arriba
minixino



Registrado: 24 Ago 2007
Mensajes: 4

MensajePublicado: 24/08/2007 11:36 pm
Título:

Encontré en internet un trozo de codigo que me evita el error

#define outportb _outp

pero me preocupa el comentario que me haceis sobre que la libreria no incluye las funciones para el manejo de puertos. ¿Hasta que punto puedo entonces controlar el puerto serie compilando los programas con este compilador? ¿que recomendaciones me dais? ...por supuesto, gratuito.

Quiero hacer un programa que envie comandos X10 (tema relacionado con la domotica) a través del puerto serie.
Volver arriba
cheroky



Registrado: 22 Sep 2005
Mensajes: 1372
Ubicación: En ecx esperando un call

MensajePublicado: 25/08/2007 9:17 am
Título:

Puesto que usas un compilador para windows y salvo los windows de versiones antiguas no podras acceder al hardware de tu maquina directamente, para ello tendras que usar funciones del API de tu sistema operativo.
Si no recuerdo mal en estos mismos foros se barajan algunas soluciones, usa el motor de busqueda.


S2.
_________________
- Explícito es mejor que implícito.
- Simple es mejor que complejo.
- Complejo es mejor que complicado.
- Plano es mejor que anidado.
- Ralo es mejor que denso.
Volver arriba
mamntc02



Registrado: 30 Abr 2007
Mensajes: 242

MensajePublicado: 27/08/2007 12:41 am
Título:

Hola,
Sí, es un tema ya comentado por aquí. Para abrir puerto serie no podrás usar outportb, en sistemas Windows XP/2000. Debes usar el API de windows. Para abrir una conexión con el puerto serie, debes usar CreateFile (en inglés). Por ejemplo
Código:
hCom = CreateFile( "COM1", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL );

Puedes mirar también aquí (en inglés) para más información de como usar los recursos de comunicaciones del API. Otro link muy interesante es este (como no, en inglés tambiénWink) con ejemplos de como establecer conexión, leer y escribir en el puerto serie.

Saludos.
Volver arriba
minixino



Registrado: 24 Ago 2007
Mensajes: 4

MensajePublicado: 27/08/2007 10:35 pm
Título:

Gracias a todos por vuestra ayuda. Veo que tengo trabajo por delante, para empezar, aprender ingles Very Happy

En fin, manos a la obra.
Volver arriba
      Índice del Foro elrincondelc.com -> Principiantes C/C++
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com