AYUDA ¿como saber la direccion hexadecimal del puerto usb?


Problemas, dudas, configuraciones y trucos de Windows
   

AYUDA ¿como saber la direccion hexadecimal del puerto usb?

Notapor funesto5555 » Dic 2010, 22:08

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", &amp;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;
}
funesto5555
Nivel 1
 
Mensajes: 8
Registrado: Dic 2010, 21:59
Twitter: @funesto5555



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

Notapor elQuique » Dic 2010, 23:07

Avatar de Usuario
elQuique
Moderador
 
Mensajes: 2047
Registrado: May 2009, 18:43
Ubicación: Florida, Uruguay
Twitter: @elQuique

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

Notapor Link » Dic 2010, 18:41

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?
Imagen
Imagen
Imagen
Imagen
Avatar de Usuario
Link
Nivel 2
 
Mensajes: 47
Registrado: May 2009, 20:14
Ubicación: México
Twitter: @

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

Notapor elQuique » Dic 2010, 00:25

Pues para consumir recursos finitos :)
Avatar de Usuario
elQuique
Moderador
 
Mensajes: 2047
Registrado: May 2009, 18:43
Ubicación: Florida, Uruguay
Twitter: @elQuique

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

Notapor funesto5555 » Dic 2010, 20:02

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.
funesto5555
Nivel 1
 
Mensajes: 8
Registrado: Dic 2010, 21:59
Twitter: @funesto5555

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

Notapor Link » Dic 2010, 15:44

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.
Imagen
Imagen
Imagen
Imagen
Avatar de Usuario
Link
Nivel 2
 
Mensajes: 47
Registrado: May 2009, 20:14
Ubicación: México
Twitter: @


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados