Upload
angel-acaymo-m-g
View
67.287
Download
7
Embed Size (px)
DESCRIPTION
Manual tutorial sobre el control del puerto paralelo (LPT) mediante Visual Studio Express, C#, C++ y VB .net.
Citation preview
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
Libros
Libro 1 Libro 2
29/07/2010 electronica-pic.blogspot.com 377
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: [email protected]
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