Anda di halaman 1dari 393

Manual

Interfaz Puerto Paralelo LPT


(Visual C#, C++ y VB .NET)
 Presentación – 3  Importar dll C++ - 265
 Puerto paralelo – 8  Visual Basic .net – 276
 Configuración – 22  Preparación VB – 304
 Inpout32.dll C# - 29  Importar dll VB – 329
 Visual C# - 33  Más códigos VB – 341
 Preparación C# - 60  Libros – 376
 Importar dll C# - 85  Vídeos – 378
 Más códigos – 97  Proyectos – 380
 Extras C# AWF – 134  Otros manuales – 386
 Instalador – 164  Enlaces interés – 388
 Nombres – 175  Versión manual – 391
 WPF C# - 186  Contacto – 392
 Visual C++ - 214  Autor - 393
 Preparación - 241

Índice
29/07/2010 electronica-pic.blogspot.com 2
Presentación
29/07/2010 electronica-pic.blogspot.com 3
 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.

Presentación
29/07/2010 electronica-pic.blogspot.com 4
 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.

Presentación
29/07/2010 electronica-pic.blogspot.com 5
 Este manual se ha trabajado en su momento
con:

 Windows XP SP3.
 Visual C# 2010 Express Edition FrameWork 4.0.
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

Presentación
29/07/2010 electronica-pic.blogspot.com 6
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
 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.

Puerto paralelo (LPT)


29/07/2010 electronica-pic.blogspot.com 10
 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).

Puerto paralelo (LPT)


29/07/2010 electronica-pic.blogspot.com 11
 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.

Puerto paralelo (LPT)


29/07/2010 electronica-pic.blogspot.com 12
 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.

Puerto paralelo (LPT)


29/07/2010 electronica-pic.blogspot.com 13
 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.

Puerto paralelo (LPT)


29/07/2010 electronica-pic.blogspot.com 14
 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.

Puerto paralelo (LPT)


29/07/2010 electronica-pic.blogspot.com 15
 Fuente:
 http://es.wikipedia.org/wiki/Puerto_parale
lo

Puerto paralelo (LPT)


29/07/2010 electronica-pic.blogspot.com 16
 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.

Puerto paralelo (LPT)


29/07/2010 electronica-pic.blogspot.com 17
 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.

Puerto paralelo (LPT)


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
 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.

Configuración
29/07/2010 electronica-pic.blogspot.com 23
 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”.

Configuración
29/07/2010 electronica-pic.blogspot.com 24
 En la pestaña
Hardaware, haz clic
en Administrador de
dispositivos.

Configuración
29/07/2010 electronica-pic.blogspot.com 25
Configuración
29/07/2010 electronica-pic.blogspot.com 26
 Como puedes ver
en la pestaña
Recursos, la
configuración es
0378.

Configuración
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
 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.

inpout32.dll
29/07/2010 electronica-pic.blogspot.com 30
 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

inpout32.dll
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
 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.

Visual C# .net (Descarga)


29/07/2010 electronica-pic.blogspot.com 34
Visual C# .net
29/07/2010 electronica-pic.blogspot.com 35
 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.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 36
 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

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 37
 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.

Visual C# .net
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
 Pulsa
“ArchivoNuevo
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”.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 41
 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.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 42
 En la propiedad
“Text” he puesto
como nombre
“Puerto paralelo
EP”.
 Puedes poner el que
quieras.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 43
 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.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 44
 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.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 45
Visual C# .net
29/07/2010 electronica-pic.blogspot.com 46
 En el “Cuadro de
herramientas”,
selecciones un
“Button” (Botón)
arrastrándolo al
formulario o
pinchando dos
veces con el ratón.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 47
 Seleccione el botón Propiedad Cambie a

del formulario con Text ON


un clic. (Name) button_D0_ON

 En la propiedad Anchor Top

“Text” escribes Location 578; 144


“ON”, en “(Name)” Size 75; 58
escribes
“button_D0_ON”,
así como indica el
cuadro de al lado
con cada botón.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 48
Propiedad Cambie a
 Lo mismo con el
Text OFF
botón
(Name) button_D0_OFF
“button_D0_OFF”.
Anchor Top
 Puedes colocar un Location 578; 208
total de 16 botones Size 75; 58
en el formulario.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 49
 Al final queda el aspecto que muestra la
imagen.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 50
 Si has introducido todos los botones, es
hora de guardar el trabajo cada cierto
tiempo.
 “ArchivoGuardar todo”.
 Te pedirá el nombre, lo dejamos como
está y pulsa “Guardar”.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 51
 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.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 52
 Elegimos “Negrita”
y 18 como tamaño.
 Finalmente
pulsamos “Aceptar”.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 53
 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”.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 54
 Pincha los cuadrados y deja el orden de
los botones como desees.

Visual C# .net
29/07/2010 electronica-pic.blogspot.com 55
Visual C# .net
29/07/2010 electronica-pic.blogspot.com 56
 Para ver como queda y probar tabular, ya
puedes compilar el proyecto pulsando F5
o la flecha verde.

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

 Descarga el ejemplo
“puerto_paralelo_cs_
01.zip” para ver el
resultado final.
 Fuente 01

Visual C# .net
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
 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.

Preparación
29/07/2010 electronica-pic.blogspot.com 61
 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.

Preparación
29/07/2010 electronica-pic.blogspot.com 62
Preparación
29/07/2010 electronica-pic.blogspot.com 63
 Vamos añadir
recursos como
iconos en
“ProyectoPropieda
des de
Puerto_paralelo”.

Preparación
29/07/2010 electronica-pic.blogspot.com 64
Preparación
29/07/2010 electronica-pic.blogspot.com 65
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 66
Preparación
29/07/2010 electronica-pic.blogspot.com 67
 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”.

Preparación
29/07/2010 electronica-pic.blogspot.com 68
 Arrastra un
“PictureBox” en el
formulario.

Preparación
29/07/2010 electronica-pic.blogspot.com 69
 Sigue los pasos de
la imagen, cuando
llegues al tercer
paso, se abrirá una
ventana.

Preparación
29/07/2010 electronica-pic.blogspot.com 70
Selecciona la imagen “off” y pulsa el botón “Aceptar”.

Preparación
29/07/2010 electronica-pic.blogspot.com 71
 Coloca el
“pictureBox” encima
de los botones D0
como indica en la
imagen.
 En la página
siguiente rellena los
parámetros.

Preparación
29/07/2010 electronica-pic.blogspot.com 72
Propiedad Cambiar a
 Este es el primer
SizeMode AutoSize
“pictureBox” con
(Name) pictureBox_D0
sus propiedades.
Anchor Top
 En los demás es Location 601; 59
similar.
 No olvidar a cada
componente
llamarlo
pictureBox_D7 que
es el último.

Preparación
29/07/2010 electronica-pic.blogspot.com 73
Preparación
29/07/2010 electronica-pic.blogspot.com 74
 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
29/07/2010 electronica-pic.blogspot.com 75
 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_par
alelo\bin\Debug

Preparación
29/07/2010 electronica-pic.blogspot.com 76
 Al introducir el Propiedad Cambie a

primer “textBox1” Text 378


al formulario, (Name) textBox_port_a
dress
cambie las
Anchor Top
propiedades.
Location 11; 275
 A partir de ahora,
todos los
componentes que
has introducido tal
cual como muestra
en el cuadro.

Preparación
29/07/2010 electronica-pic.blogspot.com 77
Propiedad Cambie a Propiedad Cambie a
Text 170 Text Dirección
(Name) textBox_byte (Name) button_Address
Anchor Top Anchor Top
Location 11; 301 Location 117; 273

Preparación
29/07/2010 electronica-pic.blogspot.com 78
Propiedad Cambie a Propiedad Cambie a
Text Enviar Text Reset
(Name) button_Enviar (Name) button_Reset_L
Anchor Top eds

Location 117; 299 Anchor Top


Location 578; 299

Preparación
29/07/2010 electronica-pic.blogspot.com 79
Preparación
29/07/2010 electronica-pic.blogspot.com 80
 Colocaremos
nuestro icono .ico
de 32x32 píxeles en
la esquina de la
aplicación.
 En la propiedad
“Icon”, busca el
icono que desees.

Preparación
29/07/2010 electronica-pic.blogspot.com 81
 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#.

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

 Descarga el ejemplo
“puerto_paralelo_cs_
02.zip” para ver el
resultado final.
 Fuente 02

Preparación
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
 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.

Importar librería
29/07/2010 electronica-pic.blogspot.com 86
 1) Agregar una nueva clase.
 2) Números de líneas del compilador.
 3) Introducir códigos de importación DLL.

Importar librería
29/07/2010 electronica-pic.blogspot.com 87
 Creamos una clase
nueva en
“ProyectoAgregar
clase…”.

Importar librería
29/07/2010 electronica-pic.blogspot.com 88
Nombre de la clase la llamaremos PortInterop.cs, a partir de
aquí quedará fijo su nombre.

Importar librería
29/07/2010 electronica-pic.blogspot.com 89
 Si quieres ver los números de línea vete a
“HerramientasOpciones”.
 Marca la casilla números de líneas y
finalmente dale “Aceptar”.

Importar librería
29/07/2010 electronica-pic.blogspot.com 90
 Se nos crea códigos
necesarios. En esta
clase sólo es para
importar el
inpout32.dll.

Importar librería
29/07/2010 electronica-pic.blogspot.com 91
Colocaremos el código using como indica arriba marcado en rojo.

Importar librería
29/07/2010 electronica-pic.blogspot.com 92
 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.

Importar librería
29/07/2010 electronica-pic.blogspot.com 93
Importar librería
29/07/2010 electronica-pic.blogspot.com 94
 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.

Importar librería
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
 1) Añadir procedimientos, para
reutilización de códigos.
 2) Funciones para los botones.

Más códigos
29/07/2010 electronica-pic.blogspot.com 98
29/07/2010 electronica-pic.blogspot.com 99
29/07/2010 electronica-pic.blogspot.com 100
29/07/2010 electronica-pic.blogspot.com 101
 Ahora vamos añadir un procedimiento
“opciones”.

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


29/07/2010 electronica-pic.blogspot.com 103
29/07/2010 electronica-pic.blogspot.com 104
29/07/2010 electronica-pic.blogspot.com 105
 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 106


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
 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 115


29/07/2010 electronica-pic.blogspot.com 116
 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 117


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
 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 130


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

 Descarga el ejemplo
“puerto_paralelo_cs_
03.zip” para ver el
resultado final.
 Fuente 03

Preparación
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


 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#

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 135
 Acerca de… - 205.  Opacidad – 404.
 Redimensionar  Parar el sistema al
formulario – 302. cerrar el interfaz –
 Más ayuda – 310. 420.
 Contraer código –  Selección de
329. puertos COM – 431.
 Icono – 350.  Create Install Free
 Notificación del (Instalador) – 453.
icono – 364.
 Enlaces Web – 380.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 136
 En este caso, doy  Cada vez más se
por hecho que has incluirán extras
leído el otro manual nuevos en
en la sección extras manuales nuevos.
si quieres hacer la  En este manual
interfaz más encontrarás algunos
completa sobre sea por que le
todo para su pueda ser útil o por
distribución. curiosidad.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 137
 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.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 138
 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.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 139
 1) Añadir componentes o controles al
formulario.
 2) Cambiar propiedades de los controles.
 3) Crear los códigos necesarios para
generar archivo.xml.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 140
 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.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 141
Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 142
 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.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 143
Propiedad Cambie a Propiedad Cambie a
Text Ac&eptar Text Por defecto
Visible False Visible False
(Name) button_Cambia (Name) button_Por_def
r_nombre ecto
Location 183; 41 Location 278; 41

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 144
Propiedad Cambie a Propiedad Cambie a
Text Nombre: Text Electrónica PIC
Visible False (Name) label_titulo
(Name) label_Nombre_ Location 378; 36
del_titulo
Location 12; 27

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 145
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 146
Propiedad Cambie a
Text
Visible False
(Name) textBox_Cambi
ar_nombre
Location 12; 43

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 147
Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 148
 Al final del código principal, escribimos
todo sobre la lectura y el guardado de
datos XML.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 149
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 150
Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 151
Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 152
 Si has puesto
nombre a las
opciones, en este
caso haz clic donde
pone “Guardar”.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 153
 En “Cambiar
nombre” haz doble
clic.
 Se activarán los
controles invisibles
para poder operar
en ellos.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 154
Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 155
 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.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 156
Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 157
 Se crea el archivo
Config.xml al pulsar
“OpcionesGuardar”.

 Dentro de ella está


el nombre que
puedes almacenar
para luego
recuperarlo.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 158
 En el interior del
archivo Config.xml
puedes ver el
código al abrirlo por
ejemplo con
Internet Explorer.

Extras C# AWF
29/07/2010 electronica-pic.blogspot.com 159
 Pulsa
“OpcionesCambiar
nombre” y se
muestra los controles
que estaban invisibles
para introducir datos.
 Escribe “Hola mundo”
y pulsa aceptar, al
finalizar,
“OpcionesGuardar”.

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

 Descarga el ejemplo
“puerto_paralelo_cs_
04.zip” para ver el
resultado final.
 Fuente 04

Preparación
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


 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.

Instalador
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
Código Fuente
Completo Instalador

 Descargar  Descargar

Instalador
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


 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.

Nombres
29/07/2010 electronica-pic.blogspot.com 176
Nombres
29/07/2010 electronica-pic.blogspot.com 177
 Como indica en la
imagen anterior, se
ha añadido:

 2 button
 9 label
 8 textBox.

Nombres
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
 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.

Nombres
29/07/2010 electronica-pic.blogspot.com 183
Aplicación con
Código fuente instalador v1.3

 Descargar  Descargar

Nombres
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


 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

WPF C#
29/07/2010 electronica-pic.blogspot.com 187
 Creamos un proyecto
nuevo en
«ArchivoNuevo
proyecto…».
 Seleccionamos
«Aplicación WPF».
 El nombre del
proyecto en este caso
es «WPF Paralelo»,
puedes elegir el que
quieras.

WPF C#
29/07/2010 electronica-pic.blogspot.com 188
WPF C#
29/07/2010 electronica-pic.blogspot.com 189
 Ya se ha abierto el
proyecto y estamos
dispuestos trabajar
en él.

WPF C#
29/07/2010 electronica-pic.blogspot.com 190
WPF C#
29/07/2010 electronica-pic.blogspot.com 191
 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.

WPF C#
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
 Podrás ver abajo el código fuente del
proyecto WPF C#.

WPF C#
29/07/2010 electronica-pic.blogspot.com 195
 Creas una clase
llamada
«PortInterop.cs», lo
ejecutas he
introduces el código
fuente que ves en la
siguiente página.

WPF C#
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
Fuente

 Descarga el código
fuente completo del
WPF C# 4.0.
 Funciona a la primera
después de haberlo  Descargar
compilado.

WPF C#
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


 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.

Visual C++ .net (Descarga)


29/07/2010 electronica-pic.blogspot.com 215
Visual C++ .net
29/07/2010 electronica-pic.blogspot.com 216
 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.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 217
 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

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 218
 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.

Visual C++ .net


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
 Pulsa
“ArchivoNuevo
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”.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 222
 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.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 223
 En la propiedad
“Text” he puesto
como nombre
“Puerto paralelo
EP”.
 Puedes poner el que
quieras.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 224
 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.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 225
 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.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 226
Visual C++ .net
29/07/2010 electronica-pic.blogspot.com 227
 En el “Cuadro de
herramientas”,
selecciones un
“Button” (Botón)
arrastrándolo al
formulario o
pinchando dos
veces con el ratón.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 228
 Seleccione el botón Propiedad Cambie a

del formulario con Text ON


un clic. (Name) button_D0_ON

 En la propiedad Anchor Top

“Text” escribes Location 578; 144


“ON”, en “(Name)” Size 75; 58
escribes
“button_D0_ON”,
así como indica el
cuadro de al lado
con cada botón.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 229
Propiedad Cambie a
 Lo mismo con el
Text OFF
botón
(Name) button_D0_OFF
“button_D0_OFF”.
Anchor Top
 Puedes colocar un Location 578; 208
total de 16 botones Size 75; 58
en el formulario.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 230
 Al final queda el aspecto que muestra la
imagen.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 231
 Si has introducido todos los botones, es
hora de guardar el trabajo cada cierto
tiempo.
 “ArchivoGuardar todo”.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 232
 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.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 233
 Elegimos “Negrita”
y 18 como tamaño.
 Finalmente
pulsamos “Aceptar”.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 234
 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”.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 235
 Pincha los cuadrados y deja el orden de
los botones como desees.

Visual C++ .net


29/07/2010 electronica-pic.blogspot.com 236
Visual C++ .net
29/07/2010 electronica-pic.blogspot.com 237
 Para ver como queda y probar tabular, ya
puedes compilar el proyecto pulsando F5
o la flecha verde.

Visual C++ .net


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

 Descarga el ejemplo
“puerto_paralelo_cpp
_01.zip” para ver el
resultado final.
 Fuente 01

Visual C++ .net


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


 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.

Preparación
29/07/2010 electronica-pic.blogspot.com 242
 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.

Preparación
29/07/2010 electronica-pic.blogspot.com 243
Preparación
29/07/2010 electronica-pic.blogspot.com 244
 Vamos añadir
recursos como
iconos en
“ProyectoNueva
carpeta”.

Preparación
29/07/2010 electronica-pic.blogspot.com 245
Agrega estos recursos en la carpeta creada en el directorio
donde tienes guardado el proyecto.

Preparación
29/07/2010 electronica-pic.blogspot.com 246
 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.

Preparación
29/07/2010 electronica-pic.blogspot.com 247
Preparación
29/07/2010 electronica-pic.blogspot.com 248
 Arrastra un
“PictureBox” en el
formulario.

Preparación
29/07/2010 electronica-pic.blogspot.com 249
 Sigue los pasos de
la imagen, cuando
llegues al tercer
paso, se abrirá una
ventana.

Preparación
29/07/2010 electronica-pic.blogspot.com 250
Selecciona la imagen “off” y pulsa el botón “Aceptar”.

Preparación
29/07/2010 electronica-pic.blogspot.com 251
 Coloca el
“pictureBox” encima
de los botones D0
como indica en la
imagen.
 En la página
siguiente rellena los
parámetros.

Preparación
29/07/2010 electronica-pic.blogspot.com 252
Propiedad Cambiar a
 Este es el primer
SizeMode AutoSize
“pictureBox” con
(Name) pictureBox_D0
sus propiedades.
Anchor Top
 En los demás es Location 601; 59
similar.
 No olvidar a cada
componente
llamarlo
pictureBox_D7 que
es el último.

Preparación
29/07/2010 electronica-pic.blogspot.com 253
Preparación
29/07/2010 electronica-pic.blogspot.com 254
 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
29/07/2010 electronica-pic.blogspot.com 255
 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

Preparación
29/07/2010 electronica-pic.blogspot.com 256
 Al introducir el Propiedad Cambie a

primer “textBox1” Text 378


al formulario, (Name) textBox_port_a
dress
cambie las
Anchor Top
propiedades.
Location 11; 275
 A partir de ahora,
todos los
componentes que
has introducido tal
cual como muestra
en el cuadro.

Preparación
29/07/2010 electronica-pic.blogspot.com 257
Propiedad Cambie a Propiedad Cambie a
Text 170 Text Dirección
(Name) textBox_byte (Name) button_Address
Anchor Top Anchor Top
Location 11; 301 Location 117; 273

Preparación
29/07/2010 electronica-pic.blogspot.com 258
Propiedad Cambie a Propiedad Cambie a
Text Enviar Text Reset
(Name) button_Enviar (Name) button_Reset_L
Anchor Top eds

Location 117; 299 Anchor Top


Location 578; 299

Preparación
29/07/2010 electronica-pic.blogspot.com 259
Preparación
29/07/2010 electronica-pic.blogspot.com 260
 Colocaremos
nuestro icono .ico
de 32x32 píxeles en
la esquina de la
aplicación.
 En la propiedad
“Icon”, busca el
icono que desees.

Preparación
29/07/2010 electronica-pic.blogspot.com 261
 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++.

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

 Descarga el ejemplo
“puerto_paralelo_cpp
_02.zip” para ver el
resultado final.
 Fuente 02

Preparación
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


 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.

Importar librería
29/07/2010 electronica-pic.blogspot.com 266
 1) Agregar una nueva clase.
 2) Números de líneas del compilador.
 3) Introducir códigos de importación DLL.

Importar librería
29/07/2010 electronica-pic.blogspot.com 267
 Creamos una clase
nueva en
“ProyectoAgregar
clase…”.

Importar librería
29/07/2010 electronica-pic.blogspot.com 268
Importar librería
29/07/2010 electronica-pic.blogspot.com 269
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 270
Se han creado PortInterop.h y PortInterop.ccp.

Importar librería
29/07/2010 electronica-pic.blogspot.com 271
 Si quieres ver los números de línea vete a
“HerramientasOpciones”.
 Marca la casilla números de líneas y
finalmente dale “Aceptar”.

Importar librería
29/07/2010 electronica-pic.blogspot.com 272
 Manual incompletosobre Visual C++.
Cuando averigua o me informen de cómo
se hace, lo seguiré haciendo. Este leguaje
se me resiste.

Importar librería
29/07/2010 electronica-pic.blogspot.com 273
 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.

Importar librería
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


 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.

Visual Basic .net (Descarga)


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
 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.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 280
 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

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 281
 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.

Visual Basic .net


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
 Pulsa
“ArchivoNuevo
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”.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 285
 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.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 286
 En la propiedad
“Text” he puesto
como nombre
“Puerto paralelo
EP”.
 Puedes poner el que
quieras.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 287
 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.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 288
 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.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 289
Visual C# .net
29/07/2010 electronica-pic.blogspot.com 290
 En el “Cuadro de
herramientas”,
selecciones un
“Button” (Botón)
arrastrándolo al
formulario o
pinchando dos
veces con el ratón.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 291
 Seleccione el botón Propiedad Cambie a

del formulario con Text ON


un clic. (Name) button_D0_ON

 En la propiedad Anchor Top

“Text” escribes Location 578; 144


“ON”, en “(Name)” Size 75; 58
escribes
“button_D0_ON”,
así como indica el
cuadro de al lado
con cada botón.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 292
Propiedad Cambie a
 Lo mismo con el
Text OFF
botón
(Name) button_D0_OFF
“button_D0_OFF”.
Anchor Top
 Puedes colocar un Location 578; 208
total de 16 botones Size 75; 58
en el formulario.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 293
 Al final queda el aspecto que muestra la
imagen.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 294
 Si has introducido todos los botones, es
hora de guardar el trabajo cada cierto
tiempo.
 “ArchivoGuardar todo”.
 Te pedirá el nombre, lo dejamos como
está y pulsa “Guardar”.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 295
 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.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 296
 Elegimos “Negrita”
y 18 como tamaño.
 Finalmente
pulsamos “Aceptar”.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 297
 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”.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 298
 Pincha los cuadrados y deja el orden de
los botones como desees.

Visual Basic .net


29/07/2010 electronica-pic.blogspot.com 299
Visual Basic .net
29/07/2010 electronica-pic.blogspot.com 300
 Para ver como queda y probar tabular, ya
puedes compilar el proyecto pulsando F5
o la flecha verde.

Visual Basic .net


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

 Descarga el ejemplo
“puerto_paralelo_vb_
01.zip” para ver el
resultado final.
 Fuente 01

Visual Basic .net


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


 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.

Preparación
29/07/2010 electronica-pic.blogspot.com 305
 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.

Preparación
29/07/2010 electronica-pic.blogspot.com 306
Preparación
29/07/2010 electronica-pic.blogspot.com 307
 Vamos añadir
recursos como
iconos en
“ProyectoPropieda
des de Puerto
Paralelo vb”.

Preparación
29/07/2010 electronica-pic.blogspot.com 308
Preparación
29/07/2010 electronica-pic.blogspot.com 309
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 310
Preparación
29/07/2010 electronica-pic.blogspot.com 311
 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”.

Preparación
29/07/2010 electronica-pic.blogspot.com 312
 Arrastra un
“PictureBox” en el
formulario.

Preparación
29/07/2010 electronica-pic.blogspot.com 313
 Sigue los pasos de
la imagen, cuando
llegues al tercer
paso, se abrirá una
ventana.

Preparación
29/07/2010 electronica-pic.blogspot.com 314
Selecciona la imagen “off” y pulsa el botón “Aceptar”.

Preparación
29/07/2010 electronica-pic.blogspot.com 315
 Coloca el
“pictureBox” encima
de los botones D0
como indica en la
imagen.
 En la página
siguiente rellena los
parámetros.

Preparación
29/07/2010 electronica-pic.blogspot.com 316
Propiedad Cambiar a
 Este es el primer
SizeMode AutoSize
“pictureBox” con
(Name) pictureBox_D0
sus propiedades.
Anchor Top
 En los demás es Location 601; 59
similar.
 No olvidar a cada
componente
llamarlo
pictureBox_D7 que
es el último.

Preparación
29/07/2010 electronica-pic.blogspot.com 317
Preparación
29/07/2010 electronica-pic.blogspot.com 318
 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
29/07/2010 electronica-pic.blogspot.com 319
 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

Preparación
29/07/2010 electronica-pic.blogspot.com 320
 Al introducir el Propiedad Cambie a

primer “textBox1” Text 378


al formulario, (Name) textBox_port_a
dress
cambie las
Anchor Top
propiedades.
Location 11; 275
 A partir de ahora,
todos los
componentes que
has introducido tal
cual como muestra
en el cuadro.

Preparación
29/07/2010 electronica-pic.blogspot.com 321
Propiedad Cambie a Propiedad Cambie a
Text 170 Text Dirección
(Name) textBox_byte (Name) button_Address
Anchor Top Anchor Top
Location 11; 301 Location 117; 273

Preparación
29/07/2010 electronica-pic.blogspot.com 322
Propiedad Cambie a Propiedad Cambie a
Text Enviar Text Reset
(Name) button_Enviar (Name) button_Reset_L
Anchor Top eds

Location 117; 299 Anchor Top


Location 578; 299

Preparación
29/07/2010 electronica-pic.blogspot.com 323
Preparación
29/07/2010 electronica-pic.blogspot.com 324
 Colocaremos
nuestro icono .ico
de 32x32 píxeles en
la esquina de la
aplicación.
 En la propiedad
“Icon”, busca el
icono que desees.

Preparación
29/07/2010 electronica-pic.blogspot.com 325
 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.

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

 Descarga el ejemplo
“puerto_paralelo_cs_
02.zip” para ver el
resultado final.
 Fuente 02

Preparación
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


 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.

Importar librería
29/07/2010 electronica-pic.blogspot.com 330
 1) Agregar una nueva clase.
 2) Números de líneas del compilador.
 3) Introducir códigos de importación DLL.

Importar librería
29/07/2010 electronica-pic.blogspot.com 331
 Creamos una clase
nueva en
“ProyectoAgregar
clase…”.

Importar librería
29/07/2010 electronica-pic.blogspot.com 332
Nombre de la clase la llamaremos PortInterop.vb, a partir de
aquí quedará fijo su nombre.

Importar librería
29/07/2010 electronica-pic.blogspot.com 333
 Si quieres ver los números de línea vete a
“HerramientasOpciones”.
 Marca la casilla números de líneas y
finalmente dale “Aceptar”.

Importar librería
29/07/2010 electronica-pic.blogspot.com 334
 Se nos crea códigos
necesarios. En esta
clase sólo es para
importar el
inpout32.dll.

Importar librería
29/07/2010 electronica-pic.blogspot.com 335
Colocaremos el código using como indica arriba marcado en rojo.

Importar librería
29/07/2010 electronica-pic.blogspot.com 336
 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.

Importar librería
29/07/2010 electronica-pic.blogspot.com 337
Importar librería
29/07/2010 electronica-pic.blogspot.com 338
 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.

Importar librería
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


 1) Añadir procedimientos, para
reutilización de códigos.
 2) Funciones para los botones.

Más códigos VB
29/07/2010 electronica-pic.blogspot.com 342
29/07/2010 electronica-pic.blogspot.com 343
 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.

Más códigos VB
29/07/2010 electronica-pic.blogspot.com 344
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 345


29/07/2010 electronica-pic.blogspot.com 346
29/07/2010 electronica-pic.blogspot.com 347
 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 348


 Ahora vamos añadir un procedimiento
“opciones”.

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


29/07/2010 electronica-pic.blogspot.com 350
29/07/2010 electronica-pic.blogspot.com 351
29/07/2010 electronica-pic.blogspot.com 352
 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 353


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
 A partir de la página siguiente, verás el
código completo.

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


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
 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 372


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

 Descarga el ejemplo
“puerto_paralelo_vb_
03.zip” para ver el
resultado final.
 Fuente 03

Preparación
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


Libro 1 Libro 2

Libros
29/07/2010 electronica-pic.blogspot.com 377
Vídeos
(Requiere conexión a Internet)

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


Vídeo 1

 Ver vídeo

Vídeos
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
 Manuales relacionados con Visual Studio
Express.

 Puerto serie RS232 con PIC 16F84A

 Puerto serie PIC16F84A VC++ y


Visual Basic

 Ver más manuales.

Otros manuales
29/07/2010 electronica-pic.blogspot.com 387
Enlaces de interés
29/07/2010 electronica-pic.blogspot.com 388
 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.

Enlaces de interés
29/07/2010 electronica-pic.blogspot.com 389
 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.

Enlaces de interés
29/07/2010 electronica-pic.blogspot.com 390
Versión del
 Versión: 1.05 manual
Publicado por primera vez:
23-07-2010

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


 Puedes publicar este Contacto
tutorial o manual sin Cualquier comentario,
sugerencia o mejoras del
previo aviso en tu manual, puedes escribirme
por correo electrónico al:
Web, foro, Blog, CD, metaconta@gmail.com
DVD, Blu-Ray, revistas
en papel, etc,
libremente.

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


Ángel Acaymo M. G.

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

Anda mungkin juga menyukai