Foros del Web » Programación para mayores de 30 ;) » Java »

Nuevo Proyecto Java (Puerto Paralelo)

Estas en el tema de Nuevo Proyecto Java (Puerto Paralelo) en el foro de Java en Foros del Web. Me estoy sumergiendo en un proyecto en el que por lo de ahora me supera bastante, pero tengo especial interés en conseguirlo, ya sea como ...
  #1 (permalink)  
Antiguo 10/07/2011, 12:17
Avatar de santayita  
Fecha de Ingreso: noviembre-2010
Mensajes: 88
Antigüedad: 13 años, 5 meses
Puntos: 1
Nuevo Proyecto Java (Puerto Paralelo)

Me estoy sumergiendo en un proyecto en el que por lo de ahora me supera bastante, pero tengo especial interés en conseguirlo, ya sea como reto, o por su utilidad al finalizar.
Se trata de conectar una pista del slot (scalextric de toda la vida) al PC a traves del puerto paralelo para implementar un cuentavueltas, control de tiempos, semaforo... etc
Hay programas ya creados para eso... pero los buenos son de pago, y los otros, pues si no consigo llevar a cabo el proyecto me resignare con uno de ellos.
Estos programas simplemente necesitan dos pin, uno de entrada y el 25. Y por el otro extremo hay diversos ingenios, desde un sensor de luz, hasta una botonera.. pero lo importante es que se active cada vez que el coche pasa.

Hay algunos ejemplos por internet, y practicas teoricamente faciles como la de gestionar el encendido y apagado de unos Leds conectados al puerto.. pero no consigo hacer funcionar,.

Estoy usando la libreria JavaComm, y no uso XP (según he ledio, Xp bloquea el puerto por seguridad o algo así). Lo unico que consigo es idenficiar el puerto, pero ni recibir ni enviar datos. El codigo que utilizo es el siguiente:

Código:
    public static void main(String args[]) {
        try {
        	Enumeration portList;
        	CommPortIdentifier portId;
        	List<String> listaPuertos=new ArrayList<String>();
        	
        	portList = CommPortIdentifier.getPortIdentifiers();
        	while (portList.hasMoreElements()) {
                portId = (CommPortIdentifier) portList.nextElement();
                if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
                	listaPuertos.add(portId.getName());
                }
        	}
        	

            iniciarPuerto(listaPuertos.get(0));
            System.out.println("Puerto iniciado ...");
            System.out.println("Preparandose para escribir en el puerto ...");
            salida.write(255);
            salida.close();
            System.out.println("Escritura sobre el puerto exitosa.");
        } catch (Exception e) {
            System.out.println(e.getMessage());
            System.exit(1);
        }

private static void iniciarPuerto(String nombrePuerto) throws Exception {
        try {
            idPort = CommPortIdentifier.getPortIdentifier(nombrePuerto);
            pPort = (ParallelPort) idPort.open("Control de Puertos en Java", 0x378);
            salida = pPort.getOutputStream();
        } catch (Exception e) {
            throw new Exception(e.getMessage() + "\n\nLa aplicación se cerrará.");
        }
    }
Y el error:
com.sun.comm.Win32SerialPort cannot be cast to javax.comm.ParallelPort

Lo dicho, esto supera con creces mis conocimientos... asi que si alguien me puede echar un cable, seria de gran ayuda. Muchas gracias de antemano.
  #2 (permalink)  
Antiguo 16/07/2011, 08:36
Avatar de santayita  
Fecha de Ingreso: noviembre-2010
Mensajes: 88
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: Nuevo Proyecto Java (Puerto Paralelo)

Muchas gracias a todos por las respuesta!
  #3 (permalink)  
Antiguo 17/07/2011, 03:42
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 14 años, 11 meses
Puntos: 306
Respuesta: Nuevo Proyecto Java (Puerto Paralelo)

De nada, gracias a ti por tu paciencia y tu comprensión a la hora de pedir ayuda.

Sobre todo teniendo en cuenta tu largo historial de ayudar a otras personas.

Cita:
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
Cita:
pPort = (ParallelPort) idPort.open("
Hubiera sido mucho más fácil si el error diera alguna pista

Cita:
com.sun.comm.Win32SerialPort cannot be cast to javax.comm.ParallelPort
Igual resulta que ese no es el problema (no he utilizado nunca estas librerías), pero te recomiendo bastante más humildad a la hora de buscar ayuda, y que si tan mal te parece no recibir ayuda, empieces por ayudar tú a los demás.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: proyecto, puerto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:52.