Objetivo
El objetivo general de este informe es ver como es el funcionamiento del puerto paralelo mediante el lenguaje de programación en C y realizarlo haciendo uso de los diodos emisores de luz (LED) los cuales mediante pulsos que se manden desde el computador estos se encenderán o apagaran.
LED.-
Leds: Un led o diodo emisor de luz es un dispositivo semiconductor (diodo) que emite luz incoherente de espectro reducido cuando circula por él una corriente eléctrica. El led puede tener diferentes colores. El nombre español proviene del acrónimo inglés LED (Light-Emitting Diode: "diodo emisor de luz").
RESISTENCIA
Es el dispositivo eléctrico más simple que existe por su construcción y principio de funcionamiento también es el más utilizado en aparatos eléctricos y electrónicos Su función es ejercer oposición al paso de la corriente eléctrica.
Unidad de medida
Su unidad de medida es el ohm (?), el origen de esta palabra es por el nombre George simón ohm, científico alemán que estableció el concepto de resistencia de una relación definida entre la cantidad de corriente circulante, voltaje aplicado y la resistencia del sistema. CONECTOR DB 25.-
Diagrama de pines del conector DB-25 estándar para el puerto paralelo
En la figura se describen todas las líneas del estándar Centronics, con indicación de su denominación y el número de pin que le corresponde, tanto en el conector tipo Centronics de 36 pines como en el conector DB-25. En esta tabla se indica que las 8 líneas correspondientes a los bits de datos (Data 0 a Data 7) son líneas de salida, pues así lo establece el estándar Centronics, sin embargo y sobre todo en las implementaciones más recientes, la circuitería asociada al interface del puerto paralelo puede ser tal que las líneas de datos pueden ser leídas desde el PC y, por tanto, ser consideradas como líneas bidireccionales.
Cuando se envía un Byte al puerto paralelo, este lo separa y manda cada bit (0/1) por un pin del conector (Data 0 a Data 7). Como los niveles de tensión y de corriente coinciden con los niveles de la lógica TTL, cuyos valores típicos son 5v – 2.6 mA para un estado alto (1) y 0V para un estado bajo (0), cuando un pin del puerto está en estado 1, tiene una tensión de 5 volt, en cambio cuando está en estado 0, no hay tensión a la salida del pin.
De esta forma es sencillo controlar componentes, sólo hay que saber calcular el valor binario que se le envía al puerto para poder activar (que tenga tensión) el pin específico del conector db25.
6 Leds de color amarillo
6 Resistencias de 220 [?]
Óhmetro 0 – 1000 [?]
1 Fuente de energía
Conector de puerto paralelo
Un protoboard
Cables de conexión
Primero se procedió a armar el siguiente circuito:
Este circuito es en el cual se conecta la salida del cable DB 25 el cual va conectado a cada una de las entradas de los Leds como se indica en la figura en cada entrada de Led entra un pin de la salida del conector los cuales estan con un número de la salida del conector y esto es lo que va a las resistencias y despues al Led este procedimiento se lo realiza para la protecciondel Led por lo que en la salida del pueto DB 25 sale un voltaje de 5[V] lo cual dañaria los Leds y es por esta razon que estan conectadas a una resistencias las cuales se encargan de proteger a los Leds y asi no se dañen con el voltaje ya que estos soportan de 3 a 3,5 voltios y es por esta razon que es necesario la conexión de resistecias, estas resistencias son un valor no muy alto se pueden utilizar unas resistencia de 220 [?] o de 330 [?].
En un diagrama se muestra como es la conexión física de las resistencias con los Leds para que se tenga una mayor comprensión del conexionado:
Este es un diagrama en el cuál se muestra como debe ser la conexión de las resistencias con los lesds y donde deben ir las entradas del puerto paralelo y en que lugar es el punto común de los Leds.
A continuación se muestra un programa el cuál se hizo funcionar en lenguaje C:
#include
#include
//#include
//#include
//#include
#include
main()
{
menu: float x,n=0,p,s=0;
int opcion,op1;
//system("cls");
clrscr();
cout<<"tttCONTROL DE LUCES DE UNA CASAnn1. Salan2. Cuarto 1n3. Cuarto 2n4. Garajen5. Callen6. salirnneliga una opcion…";
cin>>opcion;
switch(opcion) {
case 1: //system("cls");
clrscr();
cout<<"tttCONTROL DE LUZ DE LA SALAn1. Encender luzn2. Apagar luzn3. volver al menu principalnnx? ";
while(1){
cin>>op1;
if(op1==1)cout<<"luz encendida";
outport(0x378,0x01);
if(op1==2)cout<<"luz apagada";
outport(0x378,0x00);
if(op1==3) goto menu;//cout<<"tttluz encendida";
}
case 2: //system("cls");
clrscr();
cout<<"tttCONTROL DE LUZ DEl CUARTO 1n1. Encender luzn2. Apagar luzn3. volver al menu principalnnx? ";
while(1){
cin>>op1;
if(op1==1)cout<<"luz encendida";
outport(0x378,0x02);
if(op1==2)cout<<"luz apagada";
outport(0x378,0x00);
if(op1==3) goto menu;//cout<<"tttluz encendida";
}
case 3: //system("cls");
clrscr();
cout<<"tttCONTROL DE LUZ DEl CUARTO 2n1. Encender luzn2. Apagar luzn3. volver al menu principalnnx? ";
while(1){
cin>>op1;
if(op1==1)cout<<"luz encendida";
outport(0x378,0x04);
if(op1==2)cout<<"luz apagada";
outport(0x378,0x00);
if(op1==3) goto menu;//cout<<"tttluz encendida";
}
case 4: //system("cls");
clrscr();
cout<<"tttCONTROL DE LUZ DEl GARAJE n1. Encender luzn2. Apagar luzn3. volver al menu principalnnx? ";
while(1){
cin>>op1;
if(op1==1)cout<<"luz encendida";
outport(0x378,0x08);
if(op1==2)cout<<"luz apagada";
outport(0x378,0x00);
if(op1==3) goto menu;//cout<<"tttluz encendida";
}
case 5: //system("cls");
clrscr();
cout<<"tttCONTROL DE LUZ DE AFUERA n1. Encender luzn2. Apagar luzn3. volver al menu principalnnx? ";
while(1){
cin>>op1;
if(op1==1)cout<<"luz encendida";
outport(0x378,0x10);
if(op1==2)cout<<"luz apagada";
outport(0x378,0x00);
if(op1==3) goto menu;//cout<<"tttluz encendida";
}
case 6: //system("cls");
clrscr();
cout<<"adios… n";
break;
}
//system("pause");
getch();
}
Este proyecto es muy fácil pero a la vez puede ser muy útil debido a que si se conectan otros componentes se puede controlar incluso hasta las bombillas eléctricas que se usan con 200 [V], sensores de movimiento, cámaras y muchas otras aplicaciones mas de esta manera y sabiendo programación es posible realizar muchos proyectos que pueden ser de mucha utilidad para nosotros.
Es aconsejable realizar conexiones de mucho cuidado para no dañar al puerto paralelo.
Es también aconsejable armar un circuito extra el cual puede proteger el puerto paralelo de cualquier cortocircuito y así en vez de que se dañe el puerto primero se dañara el circuito integrado o circuito extra.
Es aconsejable de revisar todas las conexiones antes de hacer el funcionamiento del programa y ver todos los componentes.
Autor:
Alcon Mollericona Dexter Fernando
Laura Condosir Jose Jean
Mollericona Quisbert Yamil Lucio
Oña Monzon Ariel
Veliz Torrez Jesus Reynaldo
UNIVERSIDAD MAYOR DE SAN ANDRES
INGENIERIA ELECTRICA
FACULTAD DE INGENIERIA
LABORATORIO DE COMPUTACION I