PRACTICA DE LABORATORIO 1

30
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 Ing. Chinga Ramos Carlos Enrique 1/30

Transcript of PRACTICA DE LABORATORIO 1

Page 1: PRACTICA DE LABORATORIO 1

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

CURSOALGORITMOS Y ESTRUCTURA DE DATOS II

GUIA DE TRABAJO DEL LABORATORIO“CONTROLAR PUERTO PARALELO CON C#”

DOCENTEING. CHINGA RAMOS CARLOS ENRIQUE

HUACHO - 2011

Ing. Chinga Ramos Carlos Enrique 1/23

Page 2: PRACTICA DE LABORATORIO 1

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

Page 3: PRACTICA DE LABORATORIO 1

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\system32Agregar 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

Page 4: PRACTICA DE LABORATORIO 1

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

Page 5: PRACTICA DE LABORATORIO 1

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

Page 6: PRACTICA DE LABORATORIO 1

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

Page 7: PRACTICA DE LABORATORIO 1

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

Page 8: PRACTICA DE LABORATORIO 1

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

Page 9: PRACTICA DE LABORATORIO 1

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 ValorButton1 Name btnEncender

Text EncenderButton2 Name btnApagar

Text Apagar

Ing. Chinga Ramos Carlos Enrique 9/23

Page 10: PRACTICA DE LABORATORIO 1

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

Page 11: PRACTICA DE LABORATORIO 1

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

Page 12: PRACTICA DE LABORATORIO 1

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

Page 13: PRACTICA DE LABORATORIO 1

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 Decimal11111111 25500000000 0

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

Ing. Chinga Ramos Carlos Enrique 13/23

Page 14: PRACTICA DE LABORATORIO 1

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

Page 15: PRACTICA DE LABORATORIO 1

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

Page 16: PRACTICA DE LABORATORIO 1

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

Page 17: PRACTICA DE LABORATORIO 1

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

3. Modificar las siguientes propiedades:

Objeto Propiedad Valorform1 Name frmSemaforo

Text SemaforopictureBox1 Name pictureBox1

SizeMode StreachImagegroupBox1 Text Configuracionlabel1 Name lblTiempoRojo

Text Tiempo Rojolabel2 Name lblTiempoAmarillo

Text Tiempo AmarilloLabel3 Name lblTiempoVerde

Text Tiempo VerdetextBox1 Name txtTiempoRojo

Text 1textBox2 Name txtTiempoAmarillo

Text 1textBox3 Name txtTiempoVerde

Text 1button1 Name btnAplicar

Text Aplicartimer1 Name tmrRojotimer2 Name tmrAmarillotimer3 Name tmrVerde

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

Ing. Chinga Ramos Carlos Enrique 17/23

Page 18: PRACTICA DE LABORATORIO 1

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

Page 19: PRACTICA DE LABORATORIO 1

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

Page 20: PRACTICA DE LABORATORIO 1

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

Page 21: PRACTICA DE LABORATORIO 1

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

Page 22: PRACTICA DE LABORATORIO 1

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

Page 23: PRACTICA DE LABORATORIO 1

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