1 puerto paralelo lpt ep[2]

Post on 25-Jul-2015

204 Views

Category:

Documents

6 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Manual

Interfaz Puerto Paralelo LPT (Visual C#, C++ y VB .NET)

Índice

Presentación – 3 Puerto paralelo – 8 Configuración – 22 Inpout32.dll C# - 29 Visual C# - 33 Preparación C# - 60 Importar dll C# - 85 Más códigos – 97 Extras C# AWF – 134 Instalador – 164 Nombres – 175 WPF C# - 186 Visual C++ - 214 Preparación - 241

Importar dll C++ - 265 Visual Basic .net – 276 Preparación VB – 304 Importar dll VB – 329 Más códigos VB – 341 Libros – 376 Vídeos – 378 Proyectos – 380 Otros manuales – 386 Enlaces interés – 388 Versión manual – 391 Contacto – 392 Autor - 393

29/07/2010 electronica-pic.blogspot.com 2

Presentación

29/07/2010 electronica-pic.blogspot.com 3

Presentación

Un manual pensado para personas nóveles. Está diseñado para ser capaz de hacer tu propia interfaz sobre el puerto paralelo (LPT) con Visual Studio 2010 Express casi desde cero.

Podrás hacer una interfaz con cualquier lenguaje que desees como Visual C#, Visual C++ y Visual Basic .net.

Este manual muy básico de controlar el puerto paralelo como salida para tus proyectos, sea por hobby o estudios como Ciclo Formativos Grado Medio, Ciclo Formativos Grado Superior e incluso para la universidad.

29/07/2010 electronica-pic.blogspot.com 4

Presentación

Dejar claro que este manual parte de la idea de este enlace:

http://www.codeproject.com/KB/cs/csppleds.aspx

La adapto del 2002 al 2010 y usar botones directamente.

Si lo compara ha cambiado la programación y necesita una buena actualización, incluido una nueva interfaz más amigable.

29/07/2010 electronica-pic.blogspot.com 5

Presentación

Este manual se ha trabajado en su momento con:

Windows XP SP3. Visual C# 2010 Express Edition FrameWork 4.0.

29/07/2010 electronica-pic.blogspot.com 6

NOTA: He visto por Internet y me han comentado que no se puede usar la librería inpout32.dll en Windows Vista y Windows 7. La nueva Web donde las .dll están actualizadas para Windows Vista y Windows 7 lo puedes encontrar en esta Web. http://www.highrez.co.uk/Downloads/InpOut32/default.htm

29/07/2010 electronica-pic.blogspot.com 7

Puerto paralelo (LPT) Información

29/07/2010 electronica-pic.blogspot.com 8

Puerto paralelo (LPT) 29/07/2010 electronica-pic.blogspot.com 9

Puerto paralelo (LPT)

Puerto paralelo Un puerto paralelo es una interfaz entre una

computadora y un periférico, cuya principal característica es que los bits de datos viajan juntos, enviando un paquete de byte a la vez. Es decir, se implementa un cable o una vía física para cada bit de datos formando un bus. Mediante el puerto paralelo podemos controlar también periféricos como focos, motores entre otros dispositivos, adecuados para automatización.

El cable paralelo es el conector físico entre el puerto paralelo y el dispositivo periférico. En un puerto paralelo habrá una serie de bits de control en vías aparte que irán 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.

29/07/2010 electronica-pic.blogspot.com 10

Puerto paralelo (LPT)

Puerto paralelo Centronics El puerto paralelo más conocido es el puerto de

impresora (que cumplen más o menos la norma IEEE 1284, también denominados tipo Centronics) que destaca por su sencillez y que transmite 8 bits. Se ha utilizado principalmente para conectar impresoras, pero también ha sido usado para programadores EPROM, escáners, interfaces de red Ethernet a 10 Mb, unidades ZIP, SuperDisk y para comunicación entre dos PC (MS-DOS trajo en las versiones 5.0 ROM a 6.22 un programa para soportar esas transferencias).

29/07/2010 electronica-pic.blogspot.com 11

Puerto paralelo (LPT)

El puerto paralelo de las computadoras, de acuerdo a la norma Centronics, está compuesto por un bus de comunicación bidireccional de 8 bits de datos, además de un conjunto de líneas de protocolo. Las líneas de comunicación cuentan con un retenedor que mantiene el último valor que les fue escrito hasta que se escribe un nuevo dato, las características eléctricas son:

Tensión de nivel alto: 3,3 o 5 V. Tensión de nivel bajo: 0 V. Intensidad de salida máxima: 2,6 mA. Intensidad de entrada máxima: 24 mA.

29/07/2010 electronica-pic.blogspot.com 12

Puerto paralelo (LPT)

Los sistemas operativos basados en DOS y compatibles gestionan las interfaces de puerto paralelo con los nombres LPT1, LPT2 y así sucesivamente, Unix en cambio los nombra como /dev/lp0, /dev/lp1, y demás. Las direcciones base de los dos primeros puertos son:

LPT1 = 0x378. LPT2 = 0x278 La estructura consta de tres registros: de control, de estado y de

datos. El registro de control es un bidireccional de 4 bits, con un bit

de configuración que no tiene conexión al exterior, su dirección en el LPT1 es 0x37A.

El registro de estado, se trata de un registro de entrada de información de 5 bits, su dirección en el LPT1 es 0x379.

El registro de datos, se compone de 8 bits, es bidireccional. Su dirección en el LPT1 es 0x378.

29/07/2010 electronica-pic.blogspot.com 13

Puerto paralelo (LPT)

Puerto paralelo SCSI Un tercer puerto paralelo, muy usado en los

ordenadores Apple Macintosh y en servidores, son las diferentes implementaciones del SCSI. Al igual que IDE ha sido usado para la conexión de discos duros, unidades ópticas lectoras/grabadoras (CD-ROM, DVD), unidades magneto-ópticas y SuperDisk, pero también de otros dispositivos como escáneres e incluso otro ordenador de diferente plataforma hardware y sistema operativo, como la torre siamese hece referencia para el uso en el computador y sirve como un puerto serial el hardware 1.5 para PC/Commodore Amiga.

29/07/2010 electronica-pic.blogspot.com 14

Puerto paralelo (LPT)

Puerto paralelo IDE No obstante existe otro puerto paralelo

usado masivamente en los ordenadores: el puerto paralelo IDE, también llamado PATA (Paralell ATA), usado para la conexión de discos duros, unidades lectoras/grabadoras (CD-ROM, DVD), unidades magneto-ópticas, unidades ZIP y SuperDisk, entre la placa base del ordenador y el dispositivo.

29/07/2010 electronica-pic.blogspot.com 15

Puerto paralelo (LPT)

Fuente:

http://es.wikipedia.org/wiki/Puerto_paralelo

29/07/2010 electronica-pic.blogspot.com 16

Puerto paralelo (LPT)

Vamos a usar diodos Led con sus resistencias a su salida del puerto serie para hacer pruebas como indica en la imagen de la página siguiente.

Para circuitos serios con más protección a la placa base se usa optoacopladores.

29/07/2010 electronica-pic.blogspot.com 17

Puerto paralelo (LPT)

La utilidad que le puedas dar al puerto paralelo pueden ser más allá donde pueda llegar tu imaginación, en este caso está orientado a controlar relés.

29/07/2010 electronica-pic.blogspot.com 18

Puerto paralelo (LPT) 29/07/2010 electronica-pic.blogspot.com 19

Puerto paralelo (LPT) 29/07/2010 electronica-pic.blogspot.com 20

29/07/2010 electronica-pic.blogspot.com 21

Configuración Configuración del puerto paralelo.

29/07/2010 electronica-pic.blogspot.com 22

Configuración

Puedes comprobar directamente desde la BIOS de tu ordenador o PC cual es su configuración.

Los PC más modernos puedes configurar salidas o como entradas.

Debe poner 378 como configuración.

29/07/2010 electronica-pic.blogspot.com 23

Configuración

Puedes también verlo desde Windows XP.

Haz clic en el escritorio sin tocar ningún icono de tu monitor.

Después pulsas la tecla de Windows + Pausa.

Te aparecerá la ventana de “Propiedades del sistema”.

29/07/2010 electronica-pic.blogspot.com 24

Configuración

En la pestaña Hardaware, haz clic en Administrador de dispositivos.

29/07/2010 electronica-pic.blogspot.com 25

Configuración 29/07/2010 electronica-pic.blogspot.com 26

Configuración

Como puedes ver en la pestaña Recursos, la configuración es 0378.

29/07/2010 electronica-pic.blogspot.com 27

29/07/2010 electronica-pic.blogspot.com 28

inpout32.dll Librería DLL.

29/07/2010 electronica-pic.blogspot.com 29

inpout32.dll

No podemos controlar directamente el puerto paralelo (LPT). Necesitamos una librería llamada inpout32.dll para poder controlarlo.

Se puede descargar tanto en 32 Bits o 64 Bits para Sistemas Operativos Windows.

Su enlace de descarga es: http://logix4u.net/Legacy_Ports/Parallel_Port/Inp

out32.dll_for_Windows_98/2000/NT/XP.html Cuando tengas el inpout32.dll descargado,

déjalo guardado que ya lo usamos cuando haga falta en las siguientes páginas del manual.

29/07/2010 electronica-pic.blogspot.com 30

inpout32.dll

inpout32.dll es programado por varios lenguajes, en este ejemplo está hecho con C++, claro que también en la Web podrás encontrar ésta .dll hecho con otros lenguajes como pascal, vb, etc.

También puedes descargar su código fuente para su modificación, mejoras o nuevos añadidos.

Puedes descargar también la carpeta recursos con sus iconos, logos y inpout32.dll aquí.

Descargar

29/07/2010 electronica-pic.blogspot.com 31

29/07/2010 electronica-pic.blogspot.com 32

Visual C# .net Introducción

29/07/2010 electronica-pic.blogspot.com 33

Visual C# .net (Descarga)

Vamos a descargar Visual C# Express Edition 2010 gratuitamente en el siguiente enlace.

http://www.microsoft.com/express/Downloads

En este caso descargamos la versión en español.

Si incluye un Service Pack, instálelo, corrige problemas y estabilidad.

29/07/2010 electronica-pic.blogspot.com 34

Visual C# .net 29/07/2010 electronica-pic.blogspot.com 35

Visual C# .net

Descargarás un ejecutable del Visual C# 2010 Express, puedes empezar su descarga que puede tardar varios minutos.

Una vez finalizado le pedirá la clave que puedes obtenerlo gratuitamente con una cuenta de www.hotmail.com

Si no usas la clave, Visual C# 2010 Express funcionará 30 días. Al introducir la clave no habrá ningún límite y es totalmente gratuito.

29/07/2010 electronica-pic.blogspot.com 36

Visual C# .net

Si eres un iniciado al Visual C# 2010 Express y no conoces el entorno del IDE, te aconsejo leer el otro manual al menos sus primeras 66 páginas para familiarizarte con soltura. Selecciona enlaces para descargar el manual.

Enlace 1

Enlace 2

Enlace 3

29/07/2010 electronica-pic.blogspot.com 37

Visual C# .net

1) Crear el proyecto.

2) Introducir el nombre principal de nuestra aplicación.

3) Centrar el formulario al centro de la pantalla.

4) Introducir botones.

5) Orden de tabulación para los botones.

6) Depurar nuestra aplicación.

29/07/2010 electronica-pic.blogspot.com 38

Visual C# .net 29/07/2010 electronica-pic.blogspot.com 39

Visual C# .net 29/07/2010 electronica-pic.blogspot.com 40

Visual C# .net

Pulsa “ArchivoNuevo proyecto…”.

Cuando se abra la ventana eliges “Aplicación de Windows Form” (AWF).

Puedes ponerle un nombre que quieras, en este caso lo llamo “Puerto_paralelo”.

29/07/2010 electronica-pic.blogspot.com 41

Visual C# .net

Después de haber pulsado “Aceptar”, se crea un nuevo formulario.

Con el botón derecho del ratón, pulsa “Propiedades” para abrir la ventana de propiedades.

29/07/2010 electronica-pic.blogspot.com 42

Visual C# .net

En la propiedad “Text” he puesto como nombre “Puerto paralelo EP”.

Puedes poner el que quieras.

29/07/2010 electronica-pic.blogspot.com 43

Visual C# .net

Pon “CenterScreen” en la propiedad “StarPosition”.

Cada vez que ejecutes tu aplicación, se abrirá en el centro de la pantalla o de tu monitor.

29/07/2010 electronica-pic.blogspot.com 44

Visual C# .net

En “Size” introduce los valores “673; 385” que son el largo y ancho del formulario.

El formulario tendrá es aspecto más estirado por la pantalla.

Ver en la siguiente página.

29/07/2010 electronica-pic.blogspot.com 45

Visual C# .net 29/07/2010 electronica-pic.blogspot.com 46

Visual C# .net

En el “Cuadro de herramientas”, selecciones un “Button” (Botón) arrastrándolo al formulario o pinchando dos veces con el ratón.

29/07/2010 electronica-pic.blogspot.com 47

Visual C# .net

Seleccione el botón del formulario con un clic.

En la propiedad “Text” escribes “ON”, en “(Name)” escribes “button_D0_ON”, así como indica el cuadro de al lado con cada botón.

Propiedad Cambie a

Text ON

(Name) button_D0_ON

Anchor Top

Location 578; 144

Size 75; 58

29/07/2010 electronica-pic.blogspot.com 48

Visual C# .net 29/07/2010 electronica-pic.blogspot.com 49

Propiedad Cambie a

Text OFF

(Name) button_D0_OFF

Anchor Top

Location 578; 208

Size 75; 58

Lo mismo con el botón “button_D0_OFF”.

Puedes colocar un total de 16 botones en el formulario.

Visual C# .net

Al final queda el aspecto que muestra la imagen.

29/07/2010 electronica-pic.blogspot.com 50

Visual C# .net

Si has introducido todos los botones, es hora de guardar el trabajo cada cierto tiempo.

“ArchivoGuardar todo”.

Te pedirá el nombre, lo dejamos como está y pulsa “Guardar”.

29/07/2010 electronica-pic.blogspot.com 51

Visual C# .net

Cambiaremos la fuente y tamaño de los botones para dejarlo más destacado.

Selecciona todos los botones al mismo tiempo, puedes hacerlo con Control pulsado y pinchar uno a uno por cada botón.

29/07/2010 electronica-pic.blogspot.com 52

Visual C# .net

Elegimos “Negrita” y 18 como tamaño.

Finalmente pulsamos “Aceptar”.

29/07/2010 electronica-pic.blogspot.com 53

Visual C# .net

Ahora nos centramos en colocar por orden los botones para usar tabulación en caso de no poder usar el ratón.

Pulsa, “Ver Orden

de tabulación”.

29/07/2010 electronica-pic.blogspot.com 54

Visual C# .net

Pincha los cuadrados y deja el orden de los botones como desees.

29/07/2010 electronica-pic.blogspot.com 55

Visual C# .net 29/07/2010 electronica-pic.blogspot.com 56

Visual C# .net

Para ver como queda y probar tabular, ya puedes compilar el proyecto pulsando F5 o la flecha verde.

29/07/2010 electronica-pic.blogspot.com 57

Visual C# .net

Descarga

Descarga el ejemplo “puerto_paralelo_cs_01.zip” para ver el resultado final.

Fuente 01

29/07/2010 electronica-pic.blogspot.com 58

29/07/2010 electronica-pic.blogspot.com 59

Preparación

29/07/2010 electronica-pic.blogspot.com 60

Preparación

1) Añadir un label (etiqueta).

2) Insertar recursos.

3) Colocar iconos.

4) Introducir inpout32.dll al lado del ejecutable.

5) Arrastrar al formulario 2 textBox y 3 button.

6) Poner un icono de nuestra aplicación.

29/07/2010 electronica-pic.blogspot.com 61

Preparación

Introduces un “label”, su “Location” es 36; 108.

En la propiedad “Text”, en mi caso he introducido los D7 al D0 en el mismo label o etiqueta para no hacerlo uno a uno y perder el tiempo.

29/07/2010 electronica-pic.blogspot.com 62

Preparación 29/07/2010 electronica-pic.blogspot.com 63

Preparación

Vamos añadir recursos como iconos en “ProyectoPropieda

des de Puerto_paralelo”.

29/07/2010 electronica-pic.blogspot.com 64

Preparación 29/07/2010 electronica-pic.blogspot.com 65

Preparación 29/07/2010 electronica-pic.blogspot.com 66

Pulsa el icono marcado con la flecha roja y selecciónalo. Después si lo deseas puedes incluir información sobre el ejecutable de la aplicación como podrás ver en la página siguiente.

Preparación 29/07/2010 electronica-pic.blogspot.com 67

Preparación

Añadirás los .gif, .ico, etc.

Ya tenemos listos estos recursos, aunque falta la librería inpout32.dll que indicaremos más adelante.

Guarde y cierra la pestaña “Puerto_paralelo”.

29/07/2010 electronica-pic.blogspot.com 68

Preparación 29/07/2010 electronica-pic.blogspot.com 69

Arrastra un “PictureBox” en el formulario.

Preparación

Sigue los pasos de la imagen, cuando llegues al tercer paso, se abrirá una ventana.

29/07/2010 electronica-pic.blogspot.com 70

Preparación 29/07/2010 electronica-pic.blogspot.com 71

Selecciona la imagen “off” y pulsa el botón “Aceptar”.

Preparación

Coloca el “pictureBox” encima de los botones D0 como indica en la imagen.

En la página siguiente rellena los parámetros.

29/07/2010 electronica-pic.blogspot.com 72

Preparación

Este es el primer “pictureBox” con sus propiedades.

En los demás es similar.

No olvidar a cada componente llamarlo pictureBox_D7 que es el último.

29/07/2010 electronica-pic.blogspot.com 73

Propiedad Cambiar a

SizeMode AutoSize

(Name) pictureBox_D0

Anchor Top

Location 601; 59

Preparación 29/07/2010 electronica-pic.blogspot.com 74

Preparación 29/07/2010 electronica-pic.blogspot.com 75

Nos toca colocar la famosa librería inpout32.dll al lado del ejecutable de la interfaz.

Haz clic con el botón derecho del ratón y vete al directorio indicado en la página siguiente.

Preparación

En mi caso está en este directorio, ahora introduces la librería inpout32.dll al lado del Puerto_paralelo.exe.

C:\Documents and Settings\Hunter\Mis documentos\Visual Studio 2010\Projects\Puerto_paralelo\Puerto_paralelo\bin\Debug

29/07/2010 electronica-pic.blogspot.com 76

Preparación

Al introducir el primer “textBox1” al formulario, cambie las propiedades.

A partir de ahora, todos los componentes que has introducido tal cual como muestra en el cuadro.

Propiedad Cambie a

Text 378

(Name) textBox_port_adress

Anchor Top

Location 11; 275

29/07/2010 electronica-pic.blogspot.com 77

Preparación 29/07/2010 electronica-pic.blogspot.com 78

Propiedad Cambie a

Text 170

(Name) textBox_byte

Anchor Top

Location 11; 301

Propiedad Cambie a

Text Dirección

(Name) button_Address

Anchor Top

Location 117; 273

Preparación 29/07/2010 electronica-pic.blogspot.com 79

Propiedad Cambie a

Text Enviar

(Name) button_Enviar

Anchor Top

Location 117; 299

Propiedad Cambie a

Text Reset

(Name) button_Reset_Leds

Anchor Top

Location 578; 299

Preparación 29/07/2010 electronica-pic.blogspot.com 80

Preparación

Colocaremos nuestro icono .ico de 32x32 píxeles en la esquina de la aplicación.

En la propiedad “Icon”, busca el icono que desees.

29/07/2010 electronica-pic.blogspot.com 81

Preparación

Hasta aquí hemos llegado con el diseño de la interfaz y los recursos preparados a la hora de la programación.

En el tema siguiente ya podemos hacer nuestros primeros códigos C#.

29/07/2010 electronica-pic.blogspot.com 82

Preparación

Descarga

Descarga el ejemplo “puerto_paralelo_cs_02.zip” para ver el resultado final.

Fuente 02

29/07/2010 electronica-pic.blogspot.com 83

29/07/2010 electronica-pic.blogspot.com 84

Importar librería Importando la librería inpout32.dll.

29/07/2010 electronica-pic.blogspot.com 85

Importar librería

Vamos aprender a importar la famosa y popular librería inpout32.dll.

Esta librería es muy fácil de manejar y muy usado hasta el momento.

En este caso, no vamos a poner el código en la clase principal, sino creamos una nueva clase.

29/07/2010 electronica-pic.blogspot.com 86

Importar librería

1) Agregar una nueva clase.

2) Números de líneas del compilador.

3) Introducir códigos de importación DLL.

29/07/2010 electronica-pic.blogspot.com 87

Importar librería

Creamos una clase nueva en “ProyectoAgregar

clase…”.

29/07/2010 electronica-pic.blogspot.com 88

Importar librería 29/07/2010 electronica-pic.blogspot.com 89

Nombre de la clase la llamaremos PortInterop.cs, a partir de aquí quedará fijo su nombre.

Importar librería

Si quieres ver los números de línea vete a “HerramientasOpciones”.

Marca la casilla números de líneas y finalmente dale “Aceptar”.

29/07/2010 electronica-pic.blogspot.com 90

Importar librería

Se nos crea códigos necesarios. En esta clase sólo es para importar el inpout32.dll.

29/07/2010 electronica-pic.blogspot.com 91

Importar librería 29/07/2010 electronica-pic.blogspot.com 92

Colocaremos el código using como indica arriba marcado en rojo.

Importar librería

Introduce este código para poder importar la .dll.

[DllImport("inpout32.dll", EntryPoint = "Out32")]

public static extern void Output(int adress, int value);

[DllImport("inpout32.dll", EntryPoint = "Inp32")]

public static extern int Input(int adress);

Ver imagen en la siguiente página.

29/07/2010 electronica-pic.blogspot.com 93

Importar librería 29/07/2010 electronica-pic.blogspot.com 94

Importar librería

Podemos cerrar la ventana de la clase que estábamos trabajando.

Ahora nos toca poner códigos para llamar a la famosa librería inpout32.dll.

29/07/2010 electronica-pic.blogspot.com 95

29/07/2010 electronica-pic.blogspot.com 96

Más códigos Introduciendo códigos de reseteo, alerta, opciones, imagen, etc.

29/07/2010 electronica-pic.blogspot.com 97

Más códigos 29/07/2010 electronica-pic.blogspot.com 98

1) Añadir procedimientos, para reutilización de códigos.

2) Funciones para los botones.

29/07/2010 electronica-pic.blogspot.com 99

29/07/2010 electronica-pic.blogspot.com 100

29/07/2010 electronica-pic.blogspot.com 101

29/07/2010 electronica-pic.blogspot.com 102

Ahora vamos añadir un procedimiento “opciones”.

29/07/2010 electronica-pic.blogspot.com 103

29/07/2010 electronica-pic.blogspot.com 104

29/07/2010 electronica-pic.blogspot.com 105

29/07/2010 electronica-pic.blogspot.com 106

Los procedimientos que vamos hacer en las siguientes páginas es para cambiar los estados de los dibujos de apagando y encendido de los Led.

29/07/2010 electronica-pic.blogspot.com 107

29/07/2010 electronica-pic.blogspot.com 108

29/07/2010 electronica-pic.blogspot.com 109

29/07/2010 electronica-pic.blogspot.com 110

29/07/2010 electronica-pic.blogspot.com 111

29/07/2010 electronica-pic.blogspot.com 112

29/07/2010 electronica-pic.blogspot.com 113

29/07/2010 electronica-pic.blogspot.com 114

29/07/2010 electronica-pic.blogspot.com 115

Para dejar la interfaz más bonita y de paso añadir posibles futuras funciones, puedes introducir tres objetos al formulario.

Barra de herramientas.

Barra de tareas.

Timer para mostrar la hora y fecha.

29/07/2010 electronica-pic.blogspot.com 116

29/07/2010 electronica-pic.blogspot.com 117

En el manual ya mencionado antes, a partir de las páginas 203 explica con detalles manejar el reloj, barra de tares y barra de herramientas.

A partir de la página siguiente, verás el código completo.

29/07/2010 electronica-pic.blogspot.com 118

29/07/2010 electronica-pic.blogspot.com 119

29/07/2010 electronica-pic.blogspot.com 120

29/07/2010 electronica-pic.blogspot.com 121

29/07/2010 electronica-pic.blogspot.com 122

29/07/2010 electronica-pic.blogspot.com 123

29/07/2010 electronica-pic.blogspot.com 124

29/07/2010 electronica-pic.blogspot.com 125

29/07/2010 electronica-pic.blogspot.com 126

29/07/2010 electronica-pic.blogspot.com 127

29/07/2010 electronica-pic.blogspot.com 128

29/07/2010 electronica-pic.blogspot.com 129

29/07/2010 electronica-pic.blogspot.com 130

Ya llegamos el final de los códigos. Todo está listo para controlar el puerto paralelo.

A partir de aquí ya podrás crear tu propio interfaz a tu gusto y colores.

Muchos ánimos. Si diseñas uno, puedes pasarme las imágenes para publicarlo en el manual.

29/07/2010 electronica-pic.blogspot.com 131

Preparación

Descarga

Descarga el ejemplo “puerto_paralelo_cs_03.zip” para ver el resultado final.

Fuente 03

29/07/2010 electronica-pic.blogspot.com 132

29/07/2010 electronica-pic.blogspot.com 133

Extras C# AWF Aplicación de Windows Forms.

29/07/2010 electronica-pic.blogspot.com 134

Extras C# AWF

Hay funciones que no son importantes para el funcionamiento de la interfaz pero si recomendado tenerlo en cuenta.

La mayoría está explicada en otro manual versión 1.9 en la página 203 en adelante.

Puerto serie RS232 con PIC16F84A controlado por Visual C#

29/07/2010 electronica-pic.blogspot.com 135

Extras C# AWF

Acerca de… - 205.

Redimensionar formulario – 302.

Más ayuda – 310.

Contraer código – 329.

Icono – 350.

Notificación del icono – 364.

Enlaces Web – 380.

Opacidad – 404.

Parar el sistema al cerrar el interfaz – 420.

Selección de puertos COM – 431.

Create Install Free (Instalador) – 453.

29/07/2010 electronica-pic.blogspot.com 136

Extras C# AWF

En este caso, doy por hecho que has leído el otro manual en la sección extras si quieres hacer la interfaz más completa sobre todo para su distribución.

Cada vez más se incluirán extras nuevos en manuales nuevos.

En este manual encontrarás algunos sea por que le pueda ser útil o por curiosidad.

29/07/2010 electronica-pic.blogspot.com 137

Extras C# AWF

Ahora vamos aprender a crear un archivo a parte en .xml para almacenar datos y luego recuperarlos. En este caso sólo vamos a guardar el nombre que deseemos del título y carga los datos al iniciar la aplicación.

También vamos a dejar claro las ventanas de alertas con sus iconos correspondientes.

Por último usar el propio instalador que se incluye en el Visual Studio 2010 Express.

29/07/2010 electronica-pic.blogspot.com 138

Extras C# AWF

Quiero modificar el título de mi aplicación, cargarlo automáticamente al iniciarlo de nuevo. ¿Qué método lo puede hacer?

Puedes guardar información en un .txt, .ini, etc. En este caso lo vamos hacer con .xml cada vez más usado. Este archivo.xml se creará al lado del ejecutable.

29/07/2010 electronica-pic.blogspot.com 139

Extras C# AWF

1) Añadir componentes o controles al formulario.

2) Cambiar propiedades de los controles.

3) Crear los códigos necesarios para generar archivo.xml.

29/07/2010 electronica-pic.blogspot.com 140

Extras C# AWF

Agrega en el formulario 2 “button”, 2 “label” y 1 “textBox” y lo posiciona similar al mostrado en el cuadro de la imagen.

Mejor ver la imagen en la página siguiente.

29/07/2010 electronica-pic.blogspot.com 141

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 142

Extras C# AWF

Ahora toca cambiar las propiedades de los cinco controles que hemos insertado en el formulario.

Empezaremos con los 2 button, luego los 2 label y por último el textBox.

29/07/2010 electronica-pic.blogspot.com 143

Extras C# AWF

Propiedad Cambie a

Text Por defecto

Visible False

(Name) button_Por_defecto

Location 278; 41

29/07/2010 electronica-pic.blogspot.com 144

Propiedad Cambie a

Text Ac&eptar

Visible False

(Name) button_Cambiar_nombre

Location 183; 41

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 145

Propiedad Cambie a

Text Nombre:

Visible False

(Name) label_Nombre_del_titulo

Location 12; 27

Propiedad Cambie a

Text Electrónica PIC

(Name) label_titulo

Location 378; 36

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 146

En este caso puedes poner el formato de letras que desees o, Poner el que he puesto como ejemplo en “Propiedades” “Font”.

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 147

Propiedad Cambie a

Text

Visible False

(Name) textBox_Cambiar_nombre

Location 12; 43

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 148

Extras C# AWF

Al final del código principal, escribimos todo sobre la lectura y el guardado de datos XML.

29/07/2010 electronica-pic.blogspot.com 149

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 150

El título del xml es PicRS232. Puedes Ponerle el que quieras. Al final opté por ponerle: PuertoLPT.

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 151

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 152

Extras C# AWF

Si has puesto nombre a las opciones, en este caso haz clic donde pone “Guardar”.

29/07/2010 electronica-pic.blogspot.com 153

Extras C# AWF

En “Cambiar nombre” haz doble clic.

Se activarán los controles invisibles para poder operar en ellos.

29/07/2010 electronica-pic.blogspot.com 154

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 155

Extras C# AWF

Pulsa “Eventos” como indica en el número 1.

No olvides que debes seleccionar primero el Form1 o formulario principal.

En “Load” haz doble clic para para que genere código necesario.

29/07/2010 electronica-pic.blogspot.com 156

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 157

Extras C# AWF

Se crea el archivo Config.xml al pulsar “OpcionesGuardar”.

Dentro de ella está el nombre que puedes almacenar para luego recuperarlo.

29/07/2010 electronica-pic.blogspot.com 158

Extras C# AWF

En el interior del archivo Config.xml puedes ver el código al abrirlo por ejemplo con Internet Explorer.

29/07/2010 electronica-pic.blogspot.com 159

Extras C# AWF

Pulsa “OpcionesCambiar

nombre” y se muestra los controles que estaban invisibles para introducir datos.

Escribe “Hola mundo” y pulsa aceptar, al finalizar, “OpcionesGuardar”.

29/07/2010 electronica-pic.blogspot.com 160

Extras C# AWF 29/07/2010 electronica-pic.blogspot.com 161

Preparación

Descarga

Descarga el ejemplo “puerto_paralelo_cs_04.zip” para ver el resultado final.

Fuente 04

29/07/2010 electronica-pic.blogspot.com 162

29/07/2010 electronica-pic.blogspot.com 163

Instalador Código fuente y instalador.

29/07/2010 electronica-pic.blogspot.com 164

Instalador

Se ha comentado arriba el como hacer un instalador para tu aplicación del otro manual.

Primero verás como puede quedar tu aplicación ya que se ha hecho el programa completo.

Por otro lado el código fuente con todos los extras.

29/07/2010 electronica-pic.blogspot.com 165

Instalador 29/07/2010 electronica-pic.blogspot.com 166

Instalador 29/07/2010 electronica-pic.blogspot.com 167

Instalador 29/07/2010 electronica-pic.blogspot.com 168

Instalador 29/07/2010 electronica-pic.blogspot.com 169

Instalador 29/07/2010 electronica-pic.blogspot.com 170

Instalador 29/07/2010 electronica-pic.blogspot.com 171

Instalador 29/07/2010 electronica-pic.blogspot.com 172

Instalador

Código Fuente Completo Instalador

Descargar Descargar

29/07/2010 electronica-pic.blogspot.com 173

29/07/2010 electronica-pic.blogspot.com 174

Nombres Cambiar nombres de los relés

29/07/2010 electronica-pic.blogspot.com 175

Nombres

A la última hora he decidido modificar nuestra aplicación con el objetivo de ser capaz de cambiar los nombres de los relés para saber que dispositivos tienen conectado.

29/07/2010 electronica-pic.blogspot.com 176

Nombres 29/07/2010 electronica-pic.blogspot.com 177

Nombres

Como indica en la imagen anterior, se ha añadido:

2 button

9 label

8 textBox.

29/07/2010 electronica-pic.blogspot.com 178

Nombres 29/07/2010 electronica-pic.blogspot.com 179

Nombres 29/07/2010 electronica-pic.blogspot.com 180

Nombres 29/07/2010 electronica-pic.blogspot.com 181

Nombres 29/07/2010 electronica-pic.blogspot.com 182

Nombres

Claro que es más fácil recordar el nombre del dispositivo que Relé 1 al Relé 8.

Se le entregará el código fuente completo y aplicación con instalador completo en la página siguiente.

Versión mejorada v1.3 en las descargas de la siguiente página.

29/07/2010 electronica-pic.blogspot.com 183

Nombres

Código fuente Aplicación con instalador v1.3

Descargar Descargar

29/07/2010 electronica-pic.blogspot.com 184

29/07/2010 electronica-pic.blogspot.com 185

Windows Presentation Foundation C# Aplicación WPF C#

29/07/2010 electronica-pic.blogspot.com 186

WPF C#

Windows Presentation Foundation (WPF) es un sistema de presentación de la próxima generación, para crear aplicaciones cliente de Windows que proporcionen una experiencia impactante para el usuario desde el punto de vista visual.Con WPF, puede crear una amplia gama de aplicaciones independientes y hospedadas en explorador.

Fuente: http://msdn.microsoft.com/es-

es/library/aa970268.aspx

29/07/2010 electronica-pic.blogspot.com 187

WPF C#

Creamos un proyecto nuevo en «ArchivoNuevo

proyecto…».

Seleccionamos «Aplicación WPF».

El nombre del proyecto en este caso es «WPF Paralelo», puedes elegir el que quieras.

29/07/2010 electronica-pic.blogspot.com 188

WPF C# 29/07/2010 electronica-pic.blogspot.com 189

WPF C#

Ya se ha abierto el proyecto y estamos dispuestos trabajar en él.

29/07/2010 electronica-pic.blogspot.com 190

WPF C# 29/07/2010 electronica-pic.blogspot.com 191

WPF C#

Con WPF C# no nos extenderemos en este manual, ya que se centra en AWF.

Daremos el código fuente completo y algunas información.

He comprobado, sobre PC viejos, que usar WPF es más lento que el AWF.

Funcioma wl WPF muy bien para controlar el puerto paralelo y el puerto serie, como dije antes, más lento.

29/07/2010 electronica-pic.blogspot.com 192

WPF C# 29/07/2010 electronica-pic.blogspot.com 193

WPF C# 29/07/2010 electronica-pic.blogspot.com 194

WPF C#

Podrás ver abajo el código fuente del proyecto WPF C#.

29/07/2010 electronica-pic.blogspot.com 195

WPF C#

Creas una clase llamada «PortInterop.cs», lo ejecutas he introduces el código fuente que ves en la siguiente página.

29/07/2010 electronica-pic.blogspot.com 196

WPF C# 29/07/2010 electronica-pic.blogspot.com 197

WPF C# 29/07/2010 electronica-pic.blogspot.com 198

WPF C# 29/07/2010 electronica-pic.blogspot.com 199

WPF C# 29/07/2010 electronica-pic.blogspot.com 200

WPF C# 29/07/2010 electronica-pic.blogspot.com 201

WPF C# 29/07/2010 electronica-pic.blogspot.com 202

WPF C# 29/07/2010 electronica-pic.blogspot.com 203

WPF C# 29/07/2010 electronica-pic.blogspot.com 204

WPF C# 29/07/2010 electronica-pic.blogspot.com 205

WPF C# 29/07/2010 electronica-pic.blogspot.com 206

WPF C# 29/07/2010 electronica-pic.blogspot.com 207

WPF C# 29/07/2010 electronica-pic.blogspot.com 208

WPF C# 29/07/2010 electronica-pic.blogspot.com 209

WPF C# 29/07/2010 electronica-pic.blogspot.com 210

WPF C# 29/07/2010 electronica-pic.blogspot.com 211

WPF C#

Fuente

Descarga el código fuente completo del WPF C# 4.0.

Funciona a la primera después de haberlo compilado.

Descargar

29/07/2010 electronica-pic.blogspot.com 212

29/07/2010 electronica-pic.blogspot.com 213

Visual C++ .net Introducción

29/07/2010 electronica-pic.blogspot.com 214

Visual C++ .net (Descarga)

Vamos a descargar Visual C++ Express Edition 2010 gratuitamente en el siguiente enlace.

http://www.microsoft.com/express/Downloads

En este caso descargamos la versión en español.

Si incluye un Service Pack, instálelo, corrige problemas y estabilidad.

29/07/2010 electronica-pic.blogspot.com 215

Visual C++ .net 29/07/2010 electronica-pic.blogspot.com 216

Visual C++ .net

Descargarás un ejecutable del Visual C++ 2010 Express, puedes empezar su descarga que puede tardar varios minutos.

Una vez finalizado le pedirá la clave que puedes obtenerlo gratuitamente con una cuenta de www.hotmail.com

Si no usas la clave, Visual C++ 2010 Express funcionará 30 días. Al introducir la clave no habrá ningún límite y es totalmente gratuito.

29/07/2010 electronica-pic.blogspot.com 217

Visual C++ .net

Si eres un iniciado al Visual C++ 2010 Express y no conoces el entorno del IDE, te aconsejo leer el otro manual al menos sus primeras 66 páginas para familiarizarte con soltura. Selecciona enlaces para descargar el manual.

Enlace 1

Enlace 2

Enlace 3

29/07/2010 electronica-pic.blogspot.com 218

Visual C++ .net

1) Crear el proyecto.

2) Introducir el nombre principal de nuestra aplicación.

3) Centrar el formulario al centro de la pantalla.

4) Introducir botones.

5) Orden de tabulación para los botones.

6) Depurar nuestra aplicación.

29/07/2010 electronica-pic.blogspot.com 219

Visual C++ .net 29/07/2010 electronica-pic.blogspot.com 220

Visual C++ .net 29/07/2010 electronica-pic.blogspot.com 221

Visual C++ .net

Pulsa “ArchivoNuevo proyecto…”.

Cuando se abra la ventana eliges “Aplicación de Windows Form” (AWF).

Puedes ponerle un nombre que quieras, en este caso lo llamo “Puerto Paralelo cpp”.

29/07/2010 electronica-pic.blogspot.com 222

Visual C++ .net

Después de haber pulsado “Aceptar”, se crea un nuevo formulario.

Con el botón derecho del ratón, pulsa “Propiedades” para abrir la ventana de propiedades.

29/07/2010 electronica-pic.blogspot.com 223

Visual C++ .net

En la propiedad “Text” he puesto como nombre “Puerto paralelo EP”.

Puedes poner el que quieras.

29/07/2010 electronica-pic.blogspot.com 224

Visual C++ .net

Pon “CenterScreen” en la propiedad “StarPosition”.

Cada vez que ejecutes tu aplicación, se abrirá en el centro de la pantalla o de tu monitor.

29/07/2010 electronica-pic.blogspot.com 225

Visual C++ .net

En “Size” introduce los valores “673; 385” que son el largo y ancho del formulario.

El formulario tendrá es aspecto más estirado por la pantalla.

Ver en la siguiente página.

29/07/2010 electronica-pic.blogspot.com 226

Visual C++ .net 29/07/2010 electronica-pic.blogspot.com 227

Visual C++ .net

En el “Cuadro de herramientas”, selecciones un “Button” (Botón) arrastrándolo al formulario o pinchando dos veces con el ratón.

29/07/2010 electronica-pic.blogspot.com 228

Visual C++ .net

Seleccione el botón del formulario con un clic.

En la propiedad “Text” escribes “ON”, en “(Name)” escribes “button_D0_ON”, así como indica el cuadro de al lado con cada botón.

Propiedad Cambie a

Text ON

(Name) button_D0_ON

Anchor Top

Location 578; 144

Size 75; 58

29/07/2010 electronica-pic.blogspot.com 229

Visual C++ .net 29/07/2010 electronica-pic.blogspot.com 230

Propiedad Cambie a

Text OFF

(Name) button_D0_OFF

Anchor Top

Location 578; 208

Size 75; 58

Lo mismo con el botón “button_D0_OFF”.

Puedes colocar un total de 16 botones en el formulario.

Visual C++ .net

Al final queda el aspecto que muestra la imagen.

29/07/2010 electronica-pic.blogspot.com 231

Visual C++ .net

Si has introducido todos los botones, es hora de guardar el trabajo cada cierto tiempo.

“ArchivoGuardar todo”.

29/07/2010 electronica-pic.blogspot.com 232

Visual C++ .net

Cambiaremos la fuente y tamaño de los botones para dejarlo más destacado.

Selecciona todos los botones al mismo tiempo, puedes hacerlo con Control pulsado y pinchar uno a uno por cada botón.

29/07/2010 electronica-pic.blogspot.com 233

Visual C++ .net

Elegimos “Negrita” y 18 como tamaño.

Finalmente pulsamos “Aceptar”.

29/07/2010 electronica-pic.blogspot.com 234

Visual C++ .net

Ahora nos centramos en colocar por orden los botones para usar tabulación en caso de no poder usar el ratón.

Pulsa, “Ver Orden

de tabulación”.

29/07/2010 electronica-pic.blogspot.com 235

Visual C++ .net

Pincha los cuadrados y deja el orden de los botones como desees.

29/07/2010 electronica-pic.blogspot.com 236

Visual C++ .net 29/07/2010 electronica-pic.blogspot.com 237

Visual C++ .net

Para ver como queda y probar tabular, ya puedes compilar el proyecto pulsando F5 o la flecha verde.

29/07/2010 electronica-pic.blogspot.com 238

Visual C++ .net

Descarga

Descarga el ejemplo “puerto_paralelo_cpp_01.zip” para ver el resultado final.

Fuente 01

29/07/2010 electronica-pic.blogspot.com 239

29/07/2010 electronica-pic.blogspot.com 240

Preparación Visual C++

29/07/2010 electronica-pic.blogspot.com 241

Preparación

1) Añadir un label (etiqueta).

2) Insertar recursos.

3) Colocar iconos.

4) Introducir inpout32.dll al lado del ejecutable.

5) Arrastrar al formulario 2 textBox y 3 button.

6) Poner un icono de nuestra aplicación.

29/07/2010 electronica-pic.blogspot.com 242

Preparación

Introduces un “label”, su “Location” es 36; 108.

En la propiedad “Text”, en mi caso he introducido los D7 al D0 en el mismo label o etiqueta para no hacerlo uno a uno y perder el tiempo.

29/07/2010 electronica-pic.blogspot.com 243

Preparación 29/07/2010 electronica-pic.blogspot.com 244

Preparación

Vamos añadir recursos como iconos en “ProyectoNueva

carpeta”.

29/07/2010 electronica-pic.blogspot.com 245

Preparación 29/07/2010 electronica-pic.blogspot.com 246

Agrega estos recursos en la carpeta creada en el directorio donde tienes guardado el proyecto.

Preparación

En el “Explorador de soluciones” pulsa dos veces con el ratón en “AssemblyInfo.cpp” para rellenar los datos de información del ejecutable .exe.

29/07/2010 electronica-pic.blogspot.com 247

Preparación 29/07/2010 electronica-pic.blogspot.com 248

Preparación 29/07/2010 electronica-pic.blogspot.com 249

Arrastra un “PictureBox” en el formulario.

Preparación

Sigue los pasos de la imagen, cuando llegues al tercer paso, se abrirá una ventana.

29/07/2010 electronica-pic.blogspot.com 250

Preparación 29/07/2010 electronica-pic.blogspot.com 251

Selecciona la imagen “off” y pulsa el botón “Aceptar”.

Preparación

Coloca el “pictureBox” encima de los botones D0 como indica en la imagen.

En la página siguiente rellena los parámetros.

29/07/2010 electronica-pic.blogspot.com 252

Preparación

Este es el primer “pictureBox” con sus propiedades.

En los demás es similar.

No olvidar a cada componente llamarlo pictureBox_D7 que es el último.

29/07/2010 electronica-pic.blogspot.com 253

Propiedad Cambiar a

SizeMode AutoSize

(Name) pictureBox_D0

Anchor Top

Location 601; 59

Preparación 29/07/2010 electronica-pic.blogspot.com 254

Preparación 29/07/2010 electronica-pic.blogspot.com 255

Nos toca colocar la famosa librería inpout32.dll al lado del ejecutable de la interfaz.

Haz clic con el botón derecho del ratón y vete al directorio indicado en la página siguiente.

Preparación

En mi caso está en este directorio, ahora introduces la librería inpout32.dll al lado del Puerto Paralelo cpp.exe.

C:\Documents and Settings\Hunter\Mis documentos\Visual Studio 2010\Projects\Puerto Paralelo cpp\Debug

29/07/2010 electronica-pic.blogspot.com 256

Preparación

Al introducir el primer “textBox1” al formulario, cambie las propiedades.

A partir de ahora, todos los componentes que has introducido tal cual como muestra en el cuadro.

Propiedad Cambie a

Text 378

(Name) textBox_port_adress

Anchor Top

Location 11; 275

29/07/2010 electronica-pic.blogspot.com 257

Preparación 29/07/2010 electronica-pic.blogspot.com 258

Propiedad Cambie a

Text 170

(Name) textBox_byte

Anchor Top

Location 11; 301

Propiedad Cambie a

Text Dirección

(Name) button_Address

Anchor Top

Location 117; 273

Preparación 29/07/2010 electronica-pic.blogspot.com 259

Propiedad Cambie a

Text Enviar

(Name) button_Enviar

Anchor Top

Location 117; 299

Propiedad Cambie a

Text Reset

(Name) button_Reset_Leds

Anchor Top

Location 578; 299

Preparación 29/07/2010 electronica-pic.blogspot.com 260

Preparación

Colocaremos nuestro icono .ico de 32x32 píxeles en la esquina de la aplicación.

En la propiedad “Icon”, busca el icono que desees.

29/07/2010 electronica-pic.blogspot.com 261

Preparación

Hasta aquí hemos llegado con el diseño de la interfaz y los recursos preparados a la hora de la programación.

En el tema siguiente ya podemos hacer nuestros primeros códigos C++.

29/07/2010 electronica-pic.blogspot.com 262

Preparación

Descarga

Descarga el ejemplo “puerto_paralelo_cpp_02.zip” para ver el resultado final.

Fuente 02

29/07/2010 electronica-pic.blogspot.com 263

29/07/2010 electronica-pic.blogspot.com 264

Importar librería Importando la librería inpout32.dll.

29/07/2010 electronica-pic.blogspot.com 265

Importar librería

Vamos aprender a importar la famosa y popular librería inpout32.dll.

Esta librería es muy fácil de manejar y muy usado hasta el momento.

En este caso, no vamos a poner el código en la clase principal, sino creamos una nueva clase.

29/07/2010 electronica-pic.blogspot.com 266

Importar librería

1) Agregar una nueva clase.

2) Números de líneas del compilador.

3) Introducir códigos de importación DLL.

29/07/2010 electronica-pic.blogspot.com 267

Importar librería

Creamos una clase nueva en “ProyectoAgregar

clase…”.

29/07/2010 electronica-pic.blogspot.com 268

Importar librería 29/07/2010 electronica-pic.blogspot.com 269

Importar librería 29/07/2010 electronica-pic.blogspot.com 270

Nombre de la clase la llamaremos PortInterop, a partir de aquí quedará fijo su nombre.

Importar librería 29/07/2010 electronica-pic.blogspot.com 271

Se han creado PortInterop.h y PortInterop.ccp.

Importar librería

Si quieres ver los números de línea vete a “HerramientasOpciones”.

Marca la casilla números de líneas y finalmente dale “Aceptar”.

29/07/2010 electronica-pic.blogspot.com 272

Importar librería

Manual incompletosobre Visual C++. Cuando averigua o me informen de cómo se hace, lo seguiré haciendo. Este leguaje se me resiste.

29/07/2010 electronica-pic.blogspot.com 273

Importar librería

Podemos cerrar la ventana de la clase que estábamos trabajando.

Ahora nos toca poner códigos para llamar a la famosa librería inpout32.dll.

29/07/2010 electronica-pic.blogspot.com 274

29/07/2010 electronica-pic.blogspot.com 275

Visual Basic .net Introducción

29/07/2010 electronica-pic.blogspot.com 276

Visual Basic .net (Descarga)

Vamos a descargar Visual Basic Express Edition 2010 gratuitamente en el siguiente enlace.

http://www.microsoft.com/express/Downloads

En este caso descargamos la versión en español.

Si incluye un Service Pack, instálelo, corrige problemas y estabilidad.

29/07/2010 electronica-pic.blogspot.com 277

Visual Basic .net (Descarga) 29/07/2010 electronica-pic.blogspot.com 278

Visual Basic .net 29/07/2010 electronica-pic.blogspot.com 279

Visual Basic .net

Descargarás un ejecutable del Visual Basic 2010 Express, puedes empezar su descarga que puede tardar varios minutos.

Una vez finalizado le pedirá la clave que puedes obtenerlo gratuitamente con una cuenta de www.hotmail.com

Si no usas la clave, Visual Basic 2010 Express funcionará 30 días. Al introducir la clave no habrá ningún límite y es totalmente gratuito.

29/07/2010 electronica-pic.blogspot.com 280

Visual Basic .net

Si eres un iniciado al Visual C# 2010 Express y no conoces el entorno del IDE, te aconsejo leer el otro manual al menos sus primeras 66 páginas para familiarizarte con soltura. Selecciona enlaces para descargar el manual.

Enlace 1

Enlace 2

Enlace 3

electronica-pic.blogspot.com 281 29/07/2010

Visual Basic .net

1) Crear el proyecto.

2) Introducir el nombre principal de nuestra aplicación.

3) Centrar el formulario al centro de la pantalla.

4) Introducir botones.

5) Orden de tabulación para los botones.

6) Depurar nuestra aplicación.

29/07/2010 electronica-pic.blogspot.com 282

Visual Basic .net 29/07/2010 electronica-pic.blogspot.com 283

Visual Basic .net 29/07/2010 electronica-pic.blogspot.com 284

Visual Basic .net

Pulsa “ArchivoNuevo proyecto…”.

Cuando se abra la ventana eliges “Aplicación de Windows Form” (AWF).

Puedes ponerle un nombre que quieras, en este caso lo llamo “Puerto Paralelo vb”.

29/07/2010 electronica-pic.blogspot.com 285

Visual Basic .net

Después de haber pulsado “Aceptar”, se crea un nuevo formulario.

Con el botón derecho del ratón, pulsa “Propiedades” para abrir la ventana de propiedades.

29/07/2010 electronica-pic.blogspot.com 286

Visual Basic .net

En la propiedad “Text” he puesto como nombre “Puerto paralelo EP”.

Puedes poner el que quieras.

29/07/2010 electronica-pic.blogspot.com 287

Visual Basic .net

Pon “CenterScreen” en la propiedad “StarPosition”.

Cada vez que ejecutes tu aplicación, se abrirá en el centro de la pantalla o de tu monitor.

29/07/2010 electronica-pic.blogspot.com 288

Visual Basic .net

En “Size” introduce los valores “673; 385” que son el largo y ancho del formulario.

El formulario tendrá es aspecto más estirado por la pantalla.

Ver en la siguiente página.

29/07/2010 electronica-pic.blogspot.com 289

Visual C# .net 29/07/2010 electronica-pic.blogspot.com 290

Visual Basic .net

En el “Cuadro de herramientas”, selecciones un “Button” (Botón) arrastrándolo al formulario o pinchando dos veces con el ratón.

29/07/2010 electronica-pic.blogspot.com 291

Visual Basic .net

Seleccione el botón del formulario con un clic.

En la propiedad “Text” escribes “ON”, en “(Name)” escribes “button_D0_ON”, así como indica el cuadro de al lado con cada botón.

Propiedad Cambie a

Text ON

(Name) button_D0_ON

Anchor Top

Location 578; 144

Size 75; 58

29/07/2010 electronica-pic.blogspot.com 292

Visual Basic .net 29/07/2010 electronica-pic.blogspot.com 293

Propiedad Cambie a

Text OFF

(Name) button_D0_OFF

Anchor Top

Location 578; 208

Size 75; 58

Lo mismo con el botón “button_D0_OFF”.

Puedes colocar un total de 16 botones en el formulario.

Visual Basic .net

Al final queda el aspecto que muestra la imagen.

29/07/2010 electronica-pic.blogspot.com 294

Visual Basic .net

Si has introducido todos los botones, es hora de guardar el trabajo cada cierto tiempo.

“ArchivoGuardar todo”.

Te pedirá el nombre, lo dejamos como está y pulsa “Guardar”.

29/07/2010 electronica-pic.blogspot.com 295

Visual Basic .net

Cambiaremos la fuente y tamaño de los botones para dejarlo más destacado.

Selecciona todos los botones al mismo tiempo, puedes hacerlo con Control pulsado y pinchar uno a uno por cada botón.

29/07/2010 electronica-pic.blogspot.com 296

Visual Basic .net

Elegimos “Negrita” y 18 como tamaño.

Finalmente pulsamos “Aceptar”.

29/07/2010 electronica-pic.blogspot.com 297

Visual Basic .net

Ahora nos centramos en colocar por orden los botones para usar tabulación en caso de no poder usar el ratón.

Pulsa, “Ver Orden

de tabulación”.

29/07/2010 electronica-pic.blogspot.com 298

Visual Basic .net

Pincha los cuadrados y deja el orden de los botones como desees.

29/07/2010 electronica-pic.blogspot.com 299

Visual Basic .net 29/07/2010 electronica-pic.blogspot.com 300

Visual Basic .net

Para ver como queda y probar tabular, ya puedes compilar el proyecto pulsando F5 o la flecha verde.

29/07/2010 electronica-pic.blogspot.com 301

Visual Basic .net

Descarga

Descarga el ejemplo “puerto_paralelo_vb_01.zip” para ver el resultado final.

Fuente 01

29/07/2010 electronica-pic.blogspot.com 302

29/07/2010 electronica-pic.blogspot.com 303

Preparación Visual Basic .NET

29/07/2010 electronica-pic.blogspot.com 304

Preparación

1) Añadir un label (etiqueta).

2) Insertar recursos.

3) Colocar iconos.

4) Introducir inpout32.dll al lado del ejecutable.

5) Arrastrar al formulario 2 textBox y 3 button.

6) Poner un icono de nuestra aplicación.

29/07/2010 electronica-pic.blogspot.com 305

Preparación

Introduces un “label”, su “Location” es 36; 108.

En la propiedad “Text”, en mi caso he introducido los D7 al D0 en el mismo label o etiqueta para no hacerlo uno a uno y perder el tiempo.

29/07/2010 electronica-pic.blogspot.com 306

Preparación 29/07/2010 electronica-pic.blogspot.com 307

Preparación

Vamos añadir recursos como iconos en “ProyectoPropieda

des de Puerto Paralelo vb”.

29/07/2010 electronica-pic.blogspot.com 308

Preparación 29/07/2010 electronica-pic.blogspot.com 309

Preparación 29/07/2010 electronica-pic.blogspot.com 310

Pulsa el icono marcado con la flecha roja y selecciónalo. Después si lo deseas puedes incluir información sobre el ejecutable de la aplicación como podrás ver en la página siguiente.

Preparación 29/07/2010 electronica-pic.blogspot.com 311

Preparación

Añadirás los .gif, .ico, etc.

Ya tenemos listos estos recursos, aunque falta la librería inpout32.dll que indicaremos más adelante.

Guarde y cierra la pestaña “Puerto Paralelo vb”.

29/07/2010 electronica-pic.blogspot.com 312

Preparación 29/07/2010 electronica-pic.blogspot.com 313

Arrastra un “PictureBox” en el formulario.

Preparación

Sigue los pasos de la imagen, cuando llegues al tercer paso, se abrirá una ventana.

29/07/2010 electronica-pic.blogspot.com 314

Preparación 29/07/2010 electronica-pic.blogspot.com 315

Selecciona la imagen “off” y pulsa el botón “Aceptar”.

Preparación

Coloca el “pictureBox” encima de los botones D0 como indica en la imagen.

En la página siguiente rellena los parámetros.

29/07/2010 electronica-pic.blogspot.com 316

Preparación

Este es el primer “pictureBox” con sus propiedades.

En los demás es similar.

No olvidar a cada componente llamarlo pictureBox_D7 que es el último.

29/07/2010 electronica-pic.blogspot.com 317

Propiedad Cambiar a

SizeMode AutoSize

(Name) pictureBox_D0

Anchor Top

Location 601; 59

Preparación 29/07/2010 electronica-pic.blogspot.com 318

Preparación 29/07/2010 electronica-pic.blogspot.com 319

Nos toca colocar la famosa librería inpout32.dll al lado del ejecutable de la interfaz.

Haz clic con el botón derecho del ratón y vete al directorio indicado en la página siguiente.

Preparación

En mi caso está en este directorio, ahora introduces la librería inpout32.dll al lado del Puerto Paralelo vb.exe.

C:\Documents and Settings\Hunter\Mis documentos\Visual Studio 2010\Projects\Puerto Paralelo vb\Puerto Paralelo vb\bin\Debug

29/07/2010 electronica-pic.blogspot.com 320

Preparación

Al introducir el primer “textBox1” al formulario, cambie las propiedades.

A partir de ahora, todos los componentes que has introducido tal cual como muestra en el cuadro.

Propiedad Cambie a

Text 378

(Name) textBox_port_adress

Anchor Top

Location 11; 275

29/07/2010 electronica-pic.blogspot.com 321

Preparación 29/07/2010 electronica-pic.blogspot.com 322

Propiedad Cambie a

Text 170

(Name) textBox_byte

Anchor Top

Location 11; 301

Propiedad Cambie a

Text Dirección

(Name) button_Address

Anchor Top

Location 117; 273

Preparación 29/07/2010 electronica-pic.blogspot.com 323

Propiedad Cambie a

Text Enviar

(Name) button_Enviar

Anchor Top

Location 117; 299

Propiedad Cambie a

Text Reset

(Name) button_Reset_Leds

Anchor Top

Location 578; 299

Preparación 29/07/2010 electronica-pic.blogspot.com 324

Preparación

Colocaremos nuestro icono .ico de 32x32 píxeles en la esquina de la aplicación.

En la propiedad “Icon”, busca el icono que desees.

29/07/2010 electronica-pic.blogspot.com 325

Preparación

Hasta aquí hemos llegado con el diseño de la interfaz y los recursos preparados a la hora de la programación.

En el tema siguiente ya podemos hacer nuestros primeros códigos Visual Basic.

29/07/2010 electronica-pic.blogspot.com 326

Preparación

Descarga

Descarga el ejemplo “puerto_paralelo_cs_02.zip” para ver el resultado final.

Fuente 02

29/07/2010 electronica-pic.blogspot.com 327

29/07/2010 electronica-pic.blogspot.com 328

Importar librería Importando la librería inpout32.dll.

29/07/2010 electronica-pic.blogspot.com 329

Importar librería

Vamos aprender a importar la famosa y popular librería inpout32.dll.

Esta librería es muy fácil de manejar y muy usado hasta el momento.

En este caso, no vamos a poner el código en la clase principal, sino creamos una nueva clase.

29/07/2010 electronica-pic.blogspot.com 330

Importar librería

1) Agregar una nueva clase.

2) Números de líneas del compilador.

3) Introducir códigos de importación DLL.

29/07/2010 electronica-pic.blogspot.com 331

Importar librería

Creamos una clase nueva en “ProyectoAgregar

clase…”.

29/07/2010 electronica-pic.blogspot.com 332

Importar librería 29/07/2010 electronica-pic.blogspot.com 333

Nombre de la clase la llamaremos PortInterop.vb, a partir de aquí quedará fijo su nombre.

Importar librería

Si quieres ver los números de línea vete a “HerramientasOpciones”.

Marca la casilla números de líneas y finalmente dale “Aceptar”.

29/07/2010 electronica-pic.blogspot.com 334

Importar librería

Se nos crea códigos necesarios. En esta clase sólo es para importar el inpout32.dll.

29/07/2010 electronica-pic.blogspot.com 335

Importar librería 29/07/2010 electronica-pic.blogspot.com 336

Colocaremos el código using como indica arriba marcado en rojo.

Importar librería

Introduce este código para poder importar la .dll.

<DllImport("inpout32.dll", EntryPoint :=

"Out32")> _ Public Shared Sub Output(adress As Integer, value As Integer) End Sub <DllImport("inpout32.dll", EntryPoint := "Inp32")> _ Public Shared Function Input(adress As Integer) As Integer End Function

Ver imagen en la siguiente página.

29/07/2010 electronica-pic.blogspot.com 337

Importar librería 29/07/2010 electronica-pic.blogspot.com 338

Importar librería

Podemos cerrar la ventana de la clase que estábamos trabajando.

Ahora nos toca poner códigos para llamar a la famosa librería inpout32.dll.

29/07/2010 electronica-pic.blogspot.com 339

29/07/2010 electronica-pic.blogspot.com 340

Más códigos VB Introduciendo códigos de reseteo, alerta, opciones, imagen, etc.

29/07/2010 electronica-pic.blogspot.com 341

Más códigos VB 29/07/2010 electronica-pic.blogspot.com 342

1) Añadir procedimientos, para reutilización de códigos.

2) Funciones para los botones.

29/07/2010 electronica-pic.blogspot.com 343

Más códigos VB

Selecciona el Form1, formulario principal, en “Eventos”, haz doble clic en la propiedad “Load”.

Después introduces el código necesario que puedes ver en la siguiente página.

29/07/2010 electronica-pic.blogspot.com 344

29/07/2010 electronica-pic.blogspot.com 345

Se te genera códigos necesarios. Justo en la flecha roja ya puedes poner este código. Abajo puedes poner Reset_Leds()

29/07/2010 electronica-pic.blogspot.com 346

29/07/2010 electronica-pic.blogspot.com 347

29/07/2010 electronica-pic.blogspot.com 348

Puedes poner todo este código en una sola línea que continúa de la imagen anterior.

MessageBox.Show("No se escuentra la dll especificada." & vbCr & vbLf & vbCr & vbLf & "Asegúrate que la dll 'inpout32.dl' esté al lado del ejecutable principal." & vbCr & vbLf & "La reinstalación puede resolver el problema.", "Aviso:", MessageBoxButtons.OK, MessageBoxIcon.[Stop])

29/07/2010 electronica-pic.blogspot.com 349

Ahora vamos añadir un procedimiento “opciones”.

29/07/2010 electronica-pic.blogspot.com 350

29/07/2010 electronica-pic.blogspot.com 351

29/07/2010 electronica-pic.blogspot.com 352

29/07/2010 electronica-pic.blogspot.com 353

Los procedimientos que vamos hacer en las siguientes páginas es para cambiar los estados de los dibujos de apagando y encendido de los Led.

29/07/2010 electronica-pic.blogspot.com 354

29/07/2010 electronica-pic.blogspot.com 355

29/07/2010 electronica-pic.blogspot.com 356

29/07/2010 electronica-pic.blogspot.com 357

29/07/2010 electronica-pic.blogspot.com 358

29/07/2010 electronica-pic.blogspot.com 359

29/07/2010 electronica-pic.blogspot.com 360

29/07/2010 electronica-pic.blogspot.com 361

29/07/2010 electronica-pic.blogspot.com 362

A partir de la página siguiente, verás el código completo.

29/07/2010 electronica-pic.blogspot.com 363

29/07/2010 electronica-pic.blogspot.com 364

29/07/2010 electronica-pic.blogspot.com 365

29/07/2010 electronica-pic.blogspot.com 366

29/07/2010 electronica-pic.blogspot.com 367

29/07/2010 electronica-pic.blogspot.com 368

29/07/2010 electronica-pic.blogspot.com 369

29/07/2010 electronica-pic.blogspot.com 370

29/07/2010 electronica-pic.blogspot.com 371

29/07/2010 electronica-pic.blogspot.com 372

Ya llegamos el final de los códigos. Todo está listo para controlar el puerto paralelo.

A partir de aquí ya podrás crear tu propio interfaz a tu gusto y colores.

Muchos ánimos. Si diseñas uno, puedes pasarme las imágenes para publicarlo en el manual.

29/07/2010 electronica-pic.blogspot.com 373

Preparación

Descarga

Descarga el ejemplo “puerto_paralelo_vb_03.zip” para ver el resultado final.

Fuente 03

29/07/2010 electronica-pic.blogspot.com 374

29/07/2010 electronica-pic.blogspot.com 375

Libros Libros sobre electrónica digital y microcontroladres PIC.

29/07/2010 electronica-pic.blogspot.com 376

Vídeos (Requiere conexión a Internet)

29/07/2010 electronica-pic.blogspot.com 378

Vídeos

Vídeo 1

Ver vídeo

29/07/2010 electronica-pic.blogspot.com 379

Proyectos Puedes ver imágenes que he encontrado por Internet proyectos creados por ellos mismos montando su propio circuito impreso con relés o de fábrica para poder controlarlo por puerto paralelo.

29/07/2010 electronica-pic.blogspot.com 380

Proyectos 29/07/2010 electronica-pic.blogspot.com 381

Proyectos 29/07/2010 electronica-pic.blogspot.com 382

Proyectos 29/07/2010 electronica-pic.blogspot.com 383

Proyectos 29/07/2010 electronica-pic.blogspot.com 384

Proyectos 29/07/2010 electronica-pic.blogspot.com 385

Otros manuales

29/07/2010 electronica-pic.blogspot.com 386

Otros manuales

Manuales relacionados con Visual Studio Express.

Puerto serie RS232 con PIC 16F84A

Puerto serie PIC16F84A VC++ y Visual Basic

Ver más manuales.

29/07/2010 electronica-pic.blogspot.com 387

Enlaces de interés

29/07/2010 electronica-pic.blogspot.com 388

Enlaces de interés

http://www.microsoft.com/express/ Descarga gratuita de Visual Studio 2010 Express.

http://www.developerfusion.com/ Convertidor de C# a VB y VB a C#.

http://social.msdn.microsoft.com Foro para consultar dudas o resolver problemas sobre el mundo de Visual Studio .NET.

http://www.forosdeelectronica.com/ Foros de electrónica donde podrás encontrar información sobre interfaz aplicado a la electrónica.

http://electronica-pic.blogspot.com/ Blog del creador de este manual.

29/07/2010 electronica-pic.blogspot.com 389

Enlaces de interés

Si conoces más enlaces relacionado con el tema e interesante, me lo notifica por correo electrónico para incluirlo aquí después de haberlo aprobado.

Gracias.

29/07/2010 electronica-pic.blogspot.com 390

Versión del manual

Publicado por primera vez: 23-07-2010

Versión: 1.05

29/07/2010 electronica-pic.blogspot.com 391

Contacto

Cualquier comentario, sugerencia o mejoras del manual, puedes escribirme por correo electrónico al: metaconta@gmail.com

Puedes publicar este tutorial o manual sin previo aviso en tu Web, foro, Blog, CD, DVD, Blu-Ray, revistas en papel, etc, libremente.

29/07/2010 electronica-pic.blogspot.com 392

Autor

Ángel Acaymo M. G.

29/07/2010 electronica-pic.blogspot.com 393

top related