Encendido de focos LEDS con Java

Metalurgia. Materiales. Puerto paralelo. Protoclopador

  • Enviado por: Carlos
  • Idioma: castellano
  • País: Bolivia Bolivia
  • 12 páginas
publicidad
publicidad

UNIVERSIDAD MAYOR DE SAN ANDRES

FACULTAD DE INGENIERIA

ENCENDIDO DE FOCOS LEDS CON JAVA

'Encendido de focos LEDS con Java'

ELT-256

CARRERA

METALURGIA Y MATERIALES

FECHA DE ENTREGA

7 DE DICIEMBRE DEL 2011

LA PAZ - BOLIVIA

ENCENDIDO DE FOCOS LEDS CON JAVA

OBJETIVO

El objetivo de este proyecto es hacer encender focos leds armando un circuito especificado que nos permita hacerlo funcionar utilizando un programa en java.

INTRODUCCION

Para el encendido de focos con leds se debe de seguir una frecuencia de pasos y saber que librerías usar para el programa java, según el LPT1 pasan 5 volts y una luz leds soporta 1.5 volts , necesitamos poner resistencia para que no se nos quemen las ampolletas , hay una fórmula para sacar los ohm que necesita la resistencia según el voltaje que le llega a la led , el voltaje que necesita  y la corriente por la led .

EL PUERTO PARALELO

El puerto LPT1 tiene 25 pines que están distribuidos de la siguiente manera:

8 Pines de Salida desde el D7 al D0

5 Pines de Status S3 al S7

4 Pines de Control C0 al C3

8 Pines de Tierra o Neutro 18 al 25

Lo que debemos hacer es enviar datos a través de los Pines D7 al D0 y conectar cada led a uno de estos pines Como Nuestro el siguiente diagrama:

Ahora tenemos que enviar la información al determinado pin, en la siguiente tabla muestra de mejor manera como enviarle la información a un pin especifico:

Nombre:

Lectura/Escritura

Bit Nº

Propiedades

Data

Solo Escritura (Salida)

Bit 7

Data 7 (Pin 9)

Solo Escritura (Salida)

Bit 6

Data 6 (Pin 8)

Solo Escritura (Salida)

Bit 5

Data 5 (Pin 7)

Solo Escritura (Salida)

Bit 4

Data 4 (Pin 6)

Solo Escritura (Salida)

Bit 3

Data 3 (Pin 5)

Solo Escritura (Salida)

Bit 2

Data 2 (Pin 4)

Solo Escritura (Salida)

Bit 1

Data 1 (Pin 3)

Solo Escritura (Salida)

Bit 0

Data 0 (Pin 2)

DATOS IMPORTANTES:

  • Si queremos enviar datos al Pin D7 tenemos que escribir 2^7

  • Si queremos enviar datos al Pin D5 tenemos que escribir 2^5

MATERIALES

  • Cable de teléfono

  • 3 optocopladores

  • 6 resistencias

  • 1protoboard

  • 1 Conector LPT1

  • 3 focos leds

  • Cautín,  Soldadura

ARMADO DE LEDS EN BASE PROTOCOPLADOR

Lo siguiente es Soldar los cables segun el diagrama que está arriba.

Después soldamos cada cable a algun alfiler para usarlo de pin

Ponemos los alfileres en el LPT1 (Todo en base al diagrama de más arriba)

Y aislamos todo con la huincha aisladora para que no se nos junten los cables y provoque algún daño en nuestra PC

(A mí el diagrama no me resulto del todo, tube que empezar a poner los pines no del D7, sino que desde el S6, un pin mas a la izquierda).

PROGRAMACION EN EL SISTEMA JAVA

Con toda la conexión hecha ahora solo es cosa de empezar a programar, para eso usaremos la solución 2 para el puerto paralelo con java que puse anteriormente.

Y por ultimo una clase que contenga el main y cree una instancia a nuestra aplicación
Clase Led.java

import parport.ParallelPort;

import java.io.*;

public class Led {

//clase para manejar los led

public static class Aplicacion {

private ParallelPort lpt1;

public Aplicacion()throws IOException

{

BufferedReader w=new BufferedReader(new InputStreamReader(System.in));

lpt1 = new ParallelPort(0x378); // 0x378 is normally the base address for the LPT1 port

int opcion=0;

do {

//System.out.println("1) Prender PIN 7.");

//System.out.println("2) Prender PIN 6.");

//System.out.println("3) Prender PIN 5.");

//System.out.println("4) Prender PIN 4.");

//System.out.println("5) Prender PIN 3.");

System.out.println("1) Prender PIN 2.");

System.out.println("2) Prender PIN 1.");

System.out.println("3) Prender PIN 0.");

System.out.println("7) Apagar Todas.");

System.out.println("8) Prender Todas.");

System.out.println("9) Salir.");

opcion = Integer.parseInt(w.readLine());

lpt1.write(getOpcion(opcion));

}while(opcion!=9);

}

public int getOpcion(int opcion) {

int pin=0;

switch(opcion){

case 1 :

pin = (int)Math.pow(2,8);

break;

case 2 :

pin = (int)Math.pow(2,7);

break;

case 3 :

pin = (int)Math.pow(2,6);

break;

/* case 4 :

pin = (int)Math.pow(2,6);

break;

case 5 :

pin = (int)Math.pow(2,7);

break;

case 6 :

pin = (int)Math.pow(2,8);

break;*/

case 7 :

pin = 0;

break;

case 8 :

pin = 255;

break;

}

return pin;

}

}

public static void main(String[] args)throws IOException

{

new Aplicacion();

}

}

ANEXOS

'Encendido de focos LEDS con Java'

'Encendido de focos LEDS con Java'

'Encendido de focos LEDS con Java'

'Encendido de focos LEDS con Java'

'Encendido de focos LEDS con Java'