AYUDA ¿como saber la direccion hexadecimal del puerto usb?

Problemas, dudas, configuraciones y trucos de Windows
Responder
funesto5555
Nivel 1
Mensajes: 8
Registrado: 07 Dic 2010, 21:59
Twitter: @funesto5555

AYUDA ¿como saber la direccion hexadecimal del puerto usb?

Mensaje por funesto5555 »

Pues miren la situacion es la siguinte: necesito la direccion del puerto usb; pues tengo un programa en lenguaje c que manda bits por el puerto paralelo para hacer prender unos leds; sin embargo en la clase nos pidieron hacerlo con un adaptador de usb a paralelo!!!! desde luego los programas que he encontrado para la ejecucion piden la direccion del puerto!!!
si alguine tiene un programa que en lenguaje c o cualquiera; en el que se pueda hacer esta operacion se los agradecere mucho!!

Aqui esta el programa que encontre en la red


#include <stdio.h>
#include <unistd.h>
//asm/io.h es donde están definidas las funciones ioperm() y outb()
#include <asm/io.h>

/* Esta es la direccion más frecuente para el puerto paralelo*/
#define DATAPORT 0x378

int main()
{
//Obtenemos permiso de acceso para la direccion de DATAPORT y
//las 2 siguientes
if (ioperm(DATAPORT, 3, 1)) {perror("ioperm"); return 1;}

//Entramos en un bucle infinito
while(1)
{
int input;

//Le pedimos al usuario que introduzca un número
printf("Introduce un número entre 0 y 255 (-1 para salir)\n");
//Leemos el valor introducido y lo guardamos en "input"
scanf("%d", &input);
//Si "input" vale "-1" salimos del bucle
if(input==-1) break;
//Si "input" no está entre "0" y "255" (y no era "-1" no nos
//interesa, así que volvemos directamente al comienzo del bucle
if(input < 0 || input > 255) continue;

//Si hemos llegado hasta aqui es que "input" vale entre "0" y
//"255" y podemos sacarlo por el puerto paralelo
outb(input, DATAPORT);
}

//Antes de terminar el programa dejamos los permisos de acceso
//a los puertos como estaban
if (ioperm(DATAPORT, 3, 0)) {perror("ioperm"); return 1;}

//El programa termina sin errores
return 0;
}
Avatar de Usuario
elQuique
Moderador
Mensajes: 2227
Registrado: 05 May 2009, 18:43
Twitter: @elQuique
Ubicación: Florida, Uruguay
Contactar:

Re: AYUDA ¿como saber la direccion hexadecimal del puerto usb?

Mensaje por elQuique »

Avatar de Usuario
Link
Nivel 2
Mensajes: 46
Registrado: 08 May 2009, 20:14
Twitter: @
Ubicación: México

Re: AYUDA ¿como saber la direccion hexadecimal del puerto usb?

Mensaje por Link »

Bueno amigo, no soy experto en C pero el comando "ioperm" no es usado en consolas de Windows, estas corriendolo en Windows o en otro OS?

Y en lugar de usar un WHILE, porque no usas un SWITCH, eso lo digo cuando dices en el comentario que "llegas a un bucle infinito"

¿Para que quiere un programador un bucle infinito?
Avatar de Usuario
elQuique
Moderador
Mensajes: 2227
Registrado: 05 May 2009, 18:43
Twitter: @elQuique
Ubicación: Florida, Uruguay
Contactar:

Re: AYUDA ¿como saber la direccion hexadecimal del puerto usb?

Mensaje por elQuique »

Pues para consumir recursos finitos :)
funesto5555
Nivel 1
Mensajes: 8
Registrado: 07 Dic 2010, 21:59
Twitter: @funesto5555

Re: AYUDA ¿como saber la direccion hexadecimal del puerto usb?

Mensaje por funesto5555 »

jajaja, gracias por au ayuda, pero descubri que para manipular puertos en la compu es necesario crear librerias será cierto eso? al menos en visual microsoft asi se trabaja.
Avatar de Usuario
Link
Nivel 2
Mensajes: 46
Registrado: 08 May 2009, 20:14
Twitter: @
Ubicación: México

Re: AYUDA ¿como saber la direccion hexadecimal del puerto usb?

Mensaje por Link »

En C#(Visual Microsoft) es con objetos, al menos que quieras crearte cientos :x

Y lo de las librerias, lo dudo, ya estan establecidas, son muchas, puedes investigar cuales te pueden ayudar.
Responder