Está en la página 1de 23

Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

UNIVERSIDAD NACIONAL JOSE FAUSTINO


SANCHEZ CARRION

FACULTAD DE CIENCIAS E INGENIERIA

ESCUELA PROFESIONAL DE INGENIERIA


ELECTRONICA

CURSO
ALGORITMOS Y ESTRUCTURA DE DATOS II

GUIA DE TRABAJO DEL LABORATORIO


“CONTROLAR PUERTO PARALELO CON C#”

DOCENTE
ING. CHINGA RAMOS CARLOS ENRIQUE

HUACHO - 2011

Ing. Chinga Ramos Carlos Enrique 1/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

CONTROLAR PUERTO PARALELO CON C#

¿Qué es el Puerto Paralelo?

Un puerto paralelo es una interfaz entre un ordenador y un periférico cuya principal


característica es que los bits de datos viajan juntos enviando un byte completo o más a
la vez. Es decir, se implementa un cable o una vía física para cada bit de datos formando
un bus. El cable paralelo es el conector físico entre el puerto paralelo y el periférico. En
un puerto paralelo habrá una serie de bits de control en vías aparte que irá en ambos
sentidos por caminos distintos. En contraposición al puerto paralelo está el Puerto serie,
que envía los datos bit a bit por el mismo hilo.

Cómo funciona el Puerto Paralelo?

La mayoría de los puertos paralelos de la parte posterior de las computadoras


compatibles poseen un conector DB-25. Esto es extraño, puesto que este conector es el
de serie que se utiliza para los interfaces serie. El conector es normalmente hembra
(tiene orificios en lugar de patitas) para distinguirlo de los conectores serie que son
habitualmente machos y que puede tener también la computadora. Sin embargo, utiliza
un conector DB-25 macho para su interfaz paralelo (por ser algo diferente).
La función de cada terminal del conector DB-25 se muestra en la siguiente imagen. Las
señales que ocupan esas terminales se pueden dividir en cuatro grupos básicos: tierras,
salidas de datos, entradas de dialogo y salidas de dialogo. En la imagen las tierras se
indican con círculos, las entradas de dialogo se indican con flechas que apuntan al
conector y las salidas (tanto de datos como de dialogo) tienen flechas que apuntan hacia
afuera del conector. (Note que algunas de las líneas tienen una abreviatura convencional
que se indica entre paréntesis.)

Librería Inpout32.dll (Visual C#.NET)

Para trabajar con puertos bajo Visual C#.NET es necesario el uso de una librería que
contenga funciones de Acceso a las direcciones de los puertos. Esta librería es diferente

Ing. Chinga Ramos Carlos Enrique 2/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

dependiendo del tipo de puerto a trabajar. La librería INPOUT32.DLL contiene las


instrucciones necesarias para el manejo de los Puertos Paralelos.

Para accesar al puerto paralelo en Windows se requiere hacer uso de unas funciones que
vienen en la librería inpout32.dll.
Poner la librería correspondiente en la carpeta c:\windows\system32
Agregar a su vez al proyecto y listo ya puedes hacer uso de las funciones para accesar al
puerto paralelo:

Inp – Para leer el puerto (Entrada)


Out – para escribir al puerto (Salida)

Laboratorio 1: Encender un Led

1. Creamos un Proyecto en Visual C# y le ponemos como nombre del Proyecto


“EncenderLed”.

Ing. Chinga Ramos Carlos Enrique 3/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

2. Ahora agregaremos el Dll “inpout32.dll”, para ello en el formulario “Form1”


hacemos clic derecho.

3. Aparecerá la
siguiente
ventana luego
pulsamos
doble clic en la carpeta “bin”

Ing. Chinga Ramos Carlos Enrique 4/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

4. Luego pulsamos doble clic en Debug

5. En la siguiente ventana pegamos el archivo que hemos descargado de Internet.

6. Veamos la imagen donde ya esta copiado el archivo.

Ing. Chinga Ramos Carlos Enrique 5/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

7. El mismo archivo lo pegaremos en C:\WINDOWS\system32

Ing. Chinga Ramos Carlos Enrique 6/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

8. Ahora regresamos al proyecto ya agregaremos 1 clase, pulsando clic derecho en


el Poryecto:

Ing. Chinga Ramos Carlos Enrique 7/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

9. Le asignamos el nombre a la Clase.

10. Ahora agregamos el código que permitirá importar la DLL.

Ing. Chinga Ramos Carlos Enrique 8/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

11. Ahora agregamos la librería InteropServices:

12. Ahora Seleccionamos el formulario y agregamos 2 botones:

13. Ahora modificamos las propiedades de los botones

Objeto Propiedad Valor


Button1 Name btnEncender
Text Encender
Button2 Name btnApagar
Text Apagar

Ing. Chinga Ramos Carlos Enrique 9/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

14. El formulario quedara de la siguiente forma:

15. Ahora pulsamos doble clic en el botón “Encender” y accederemos al código:

Ing. Chinga Ramos Carlos Enrique 10/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

16. Ahora averiguaremos el código del puerto LPT1

Ing. Chinga Ramos Carlos Enrique 11/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

17. Ahora como el código del puerto es 0378 pero en hexadecimal debemos
convertirlo en valor decimal:

Ing. Chinga Ramos Carlos Enrique 12/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

18. Ahora codifiquemos para enviar a los 8 bits de datos de envio una pulsación de
corriente a la vez a la vez

19. Realizamos el calculo del valor a enviar de Binario a Decimal

Valor Binario Valor Decimal


11111111 255
00000000 0

20. Realizamos a Continuación la Codificación:

Ing. Chinga Ramos Carlos Enrique 13/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

21. Ahora Probamos la Practica.

22. Veamos la reacción cuando pulsamos Encender

Ing. Chinga Ramos Carlos Enrique 14/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

23. Ahora veamos la reacción cuando pulsamos “Apagar”

Ing. Chinga Ramos Carlos Enrique 15/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

Laboratorio 2: Semáforo

1. Creamos un proyecto denominado “Semáforo”

2. Agregaremos los siguientes controles visuales:

Ing. Chinga Ramos Carlos Enrique 16/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

3. Modificar las siguientes propiedades:

Objeto Propiedad Valor


form1 Name frmSemaforo
Text Semaforo
pictureBox1 Name pictureBox1
SizeMode StreachImage
groupBox1 Text Configuracion
label1 Name lblTiempoRojo
Text Tiempo Rojo
label2 Name lblTiempoAmarillo
Text Tiempo Amarillo
Label3 Name lblTiempoVerde
Text Tiempo Verde
textBox1 Name txtTiempoRojo
Text 1
textBox2 Name txtTiempoAmarillo
Text 1
textBox3 Name txtTiempoVerde
Text 1
button1 Name btnAplicar
Text Aplicar
timer1 Name tmrRojo
timer2 Name tmrAmarillo
timer3 Name tmrVerde

4. Agregamos ahora la dll a la carpeta donde estara el ejecutable del programa

Ing. Chinga Ramos Carlos Enrique 17/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

5. Ahora copiaremos las imágenes respectivas en la misma carpeta donde se


encontrara el ejecutable.

6. Ahora agregaremos la clase para importar la dll.

Ing. Chinga Ramos Carlos Enrique 18/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

7. Ahora escribimos el siguiente código:

8. Ahora programaremos el formulario, en el botón pulsamos doble clic.

Ing. Chinga Ramos Carlos Enrique 19/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

9. Ahora agregaremos los siguientes métodos que hacen el cambio de imagen y


envió de información al puerto paralelo.

10. Ahora regresamos al formulario y pulsamos doble clic sobre el control tmrRojo

Ing. Chinga Ramos Carlos Enrique 20/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

11. Ahora programamos el siguiente código.

12. De similar manera realizamos los pasos para los dos timer restantes, quedando.

Ing. Chinga Ramos Carlos Enrique 21/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

13. Quedando el formulario de la siguiente forma

14. Ahora realizaremos la configuración en la Placa electrónica de pruebas.

Ing. Chinga Ramos Carlos Enrique 22/23


Universidad José Faustino Sánchez Carrión Ingeniería Electrónica

15. Miremos desde otra perspectiva el proyecto

16. Ahora solo resta ejecutar la aplicación.

Ing. Chinga Ramos Carlos Enrique 23/23

También podría gustarte