Autor Tema: VB y COMUNICACION PIC VIA PARALELO LPT  (Leído 95271 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado lord_10

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 613
    • My Blog
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #15 en: 21 de Octubre de 2005, 23:48:00 »
directamente desde la PC ahi tengo el otro probador de LPT,aunqu ehabra que anexarles mas cosillas por ahi...Sonrisa
..::  3D5F ™ ::..  AHC

"Tan sólo hace falta una pequeña idea, para hacer un gran sueño realidad."

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #16 en: 22 de Octubre de 2005, 00:06:00 »
Hola:

Pana probaste todos los ejemplos en el proto..? yo solo los simule pero estoy seguro de que debe funcionar...! Sonrisa Gigante

Desconectado olotill

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 249
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #17 en: 22 de Octubre de 2005, 12:25:00 »
Que hubo giovanni..

Mira hermano, esta pregunta te va a resultar medio tonta pero la verdad, no se como dibujaste en visual basic los display de 7 segmentos Sonrisa GiganteSonrisa Gigante

Viene en alguna libreria o tu la diseñas, please ayudame que ando quedado en eso, por la programacion pues esa si la entendi lo que no se es como dibujar los display en VB...

Jejeje Sonrisa GiganteSonrisa Gigante  perdon si es algo basico pero como sabes de VB no se mucho por no decir nada Muchas risasMuchas risas

Bueno espero que puedas ayudarme...

UN SALUDO HERMANO
"La imaginación es más importante que el conocimiento"  A. Einstein..

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #18 en: 22 de Octubre de 2005, 12:40:00 »
Hola:

Que hubo Fabian, mira dibujar los displays te va a resultar muy sencillo... los hice en WORD... cada segmento es una linea gruesa y le puse un color, luego los puse sobre un cuadrado en tres dimensiones... luego hice un solo elemento y luego los copie sobre un Image en VB...! y !LISTO!... ya tienes tu display...

Suerte...!

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #19 en: 24 de Octubre de 2005, 23:31:00 »
Hola:

Propongo un ejemplo mas.... uno mas para avanzar al puerto de estado.... esto del puerto de datos se resume en lo siquiente.... una libreria para trabajar con el puerto, hay que tener presente la direccion del puerto que se quiere utilizar... Datos H378, Status H379, control H37A... el de datos que estamos probando y que es de 8 bits y que todos los bits estan disponibles en pines desde el 2-9... y tambien tener en cuenta las instrucciones y el llamado a la libreria que esta en el modulo....

Si alguien tiene una idea de que ejemplo hacer para acabar seria bueno....! Sonrisa Gigante

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #20 en: 25 de Octubre de 2005, 13:41:00 »
Hola:

Me respondo a mi mismo y propongo que hagamos un reloj con 4 displays....

De tal forma que los pines del LPT los distribuyamos de la siguiente manera... 4 para el manejo de los siplays que van a estar multiplexados y trabajaremos con un decodificador... y los otro 4 para selecionar el display y mostrar el dato... Osea el circuito algo como esto:



Que les parece....! Alguien se anima...?

Desconectado Y@el

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 415
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #21 en: 26 de Octubre de 2005, 15:34:00 »
Vaya, acabo de darme cuenta de este Sub-Foro y me parece de lo más interesante....

Si puedo ayudar en algo chevere no más Muchas risas Rebotado Rebotado Rebotado Rebotado


Saludos.

Yoel Ocmin
http://proyectosfie.tk

PD: LordLafebre.... me tenias intrigado de donde sacabas las imagenes del  Display(i) pues no las encontraba por ningun lado, hasta que se me ocurrio agrandar el Form. y vi otro display (Que raro si eso no lo deje ahi). y Flash Ahi estaban la matriz de imagenes... Buina tio Muchas risas (y) Rebotado Rebotado Rebotado ... como lei por ahi... Hoy aprendi algo nuevo Muchas risas

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #22 en: 26 de Octubre de 2005, 15:45:00 »
Hola:

Pues las puse mas abajo del tamaño en que se muestra el form en modo ejecucion... se me olvido decir eso... ji ji ji Sonrisa Gigante

Bien venido... y pues no queda mas sino hacer unos ejemplitos.... como veras propuse hacer un reloj para afianzarnos mas y luego seguir con los otros dos puertos...! Sonrisa Gigante

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7918
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #23 en: 27 de Octubre de 2005, 09:17:00 »
Yo si los habia encontrado, porque marcaba en las propiedades y no me encuadraba ningun control, asi que agrande el form y lo encontre...Sonrisa GiganteSonrisa Gigante

Muy bueno lo tuyo Lord !!RebotadoRebotado
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado Y@el

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 415
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #24 en: 27 de Octubre de 2005, 11:32:00 »
Bueno, siguiendo con lo de LordLafebre

y agarrando su mismo ejemplito, con previas modificaciones,
Les presento al Reloj


http://proyectosfie.webcindario.com/documentos/reloj.png

los arhivos del Reloj estan Aqui:
http://proyectosfie.webcindario.com/documentos/reloj.zip

Explicaci�n:

Antes que nada Decirles, que como Ud. sabr�n el Sistema Operativo funciona con un Reloj Interno. Y es posible acceder a �l desde VB, con la variable Time (que por cierto es del tipo String).

Pero tambien podemos obtener cada Parte del Tiempo... solo Hora, solo Minutos y solo Segundos...
y como hago esto ???

Bueno es Relativamente facil, por no decir Recontrafacil... Muchas risas

Hora = Val( Hour(Time))
Minutos = Val (Minute (Time))
Segundos = Val (second(Time))

Ahora con esto tendremos 2 decimales, asi que podemos separarlos en Decenas y Unidades... (Bueno en mi codigo dice Centenas y Unidades ... cualquiera se equivoca Muchas risas).

DecenasHora = Hora  10
UnidadesHora = Hora mod 10

y lo mismo con los minutos y segundos....

una vez que tenemos estos valores de forma independiente, los mandamos a los displays. (En este caso  a los Displays del Formulario).

Pero para enviarlos al puerto paralelo, tenemos que enviarlos de una forma tal que  el Hardware realice lo que queremos.

Para que sea mas entendible voy a separar los nibles de D7 - D4 y D3 - D0 por la funcion que realizan en el ckto.

D7-D4 : Escojen Display a Mostrar. Como lo hacen, pues donde se escriba un 0, se muestra el dato.
Entonces tenemos

D7-D4  D3-D0
  1110   XXXX = 1110 0000 + 0000 XXXX = 224 + Dec(XXXX) ->Decena Hora
  1101   XXXX = 1101 0000 + 0000 XXXX = 208 + Dec(XXXX) ->Unidad Hora
  1011   XXXX = 1011 0000 + 0000 XXXX = 176 + Dec(XXXX) ->Decena Minuto
  0111   XXXX = 0111 0000 + 0000 XXXX = 112 + Dec(XXXX) ->Unidad Minuto

Donde Dec(XXXX) es el valor del display y vale de 0 a 9

Esto en el Programa es:
Escribir &H378, (224 + CentenaHora)
Sleep 10
Escribir &H378, (208 + UnidadHora)
Sleep 10
Escribir &H378, (176 + CentenaMinutos)
Sleep 10
Escribir &H378, (112 + UnidadMinutos)
Sleep 10

Donde Sleep es una api de Windows, q permite hacer retardos en Milisegundos. Esa declarado en reloj.obj, junto con Escribir y Leer, funciones para escritura y lectura de puertos.

***********************************************************
Bueno hasta ahora, nos hemos ya sabemos que es lo que se va hacer. Pero como lo haremos, ya que esto debe hacerse siempre....

Bueno, para eso usaremos 2 Controles tipo Timer.
estos Activan un Evento cada intervalo en milisegundos que nosotros establescamos en su propiedad Interval.

Uso 2, por los motivos siguientes:
* Necesito que la hora es visualizada se actualice, pero esta no varia con mucha frecuencia. solo cada segundo. Entonces creo un timer q lo actualice cada 500ms, esto por los retrazos de la PC.


* Necesito una funcion que este mostrando constantemente los valores en los displays, sino nunca vere nada, o solo vere prenderse un Display, como en la captura de la imagen arriba. Para eso creo otro timer, pero que en menor tiempo este actualizando la hora que se envia al Puerto.


Espero haber sido claro. O en todo caso me avisan nom�s, y se puede extender esta explicacion. Ya que solo me he limitado a explicar los cambios hechos respecto a los otros ejemplos de Lord...

bye


PD: claro, que el ckto mostrado arriba solo sirve para fines explicativos, si se desea hacer uno que vaya de acuerdo a las necesidades, se deben colocar, los transistores, tal como lo muestra Lord. Además que ya no habilitaria el display con 0 sino con 1, y los valores cambiarian de 224 a 16(0001 0000), 208 a 32(0010 0000), 176 a 64(0100 0000) y 112 a 128(1000 0000). Ahora si bye

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #25 en: 27 de Octubre de 2005, 11:47:00 »
Hola:

Que bien....! Rebotado

Mientras esperaba que alguien se anime a decir hagamoslo...!!! tu ya lo tienes hecho... Sonrisa Gigante basicamente mi idea era esa.... pero voy a tratar de hacerlo de otra hacerlo diferente al tuyo a ver que sale....! Sonrisa Gigante

Desconectado Y@el

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 415
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #26 en: 27 de Octubre de 2005, 14:34:00 »
Podria, darle mas Punch... al Asunto, y ya no hacer q se vean solo Horas, y Minutos, sino tambien segundos como esta en el programa ....


http://proyectosfie.webcindario.com/documentos/reloj2.png


Veamos, ahora quien se anima, espero que otro tambien lo intente Muchas risas

bye

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #27 en: 27 de Octubre de 2005, 23:52:00 »
Hola:

Pues he utilizado la parte del codigo de Yoel para "igualar" el reloj a la hora del sistema... es un poco dificil hacerlo de otra manera ya que mi idea era como la de el Sonrisa Gigante.... ya que se parece mucho a la programacion para una practica con pic pero en PBP que habia hecho... para seleccionar el display y visualizar ese momento el dato utilice un 7442 que es un Decodificador BCD a decimal... (ese lo tenia a mano) no varia mucho el codigo por no decir casi nada....

Solo utilizo un timer que hace un llamado a una subrutina llamada RefreshClock en la que actualizo el reloj en la pantalla en el PC y envio los datos al puerto....! Sonrisa Gigante

Una cosa que sucede en la simulacion y da un error es porque el tiempo de envio es muy rapido en la simulacion pareciera que los datos se ven de uno en uno... pero es efecto de la simulacion en la realidad va bien...! Giño


Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #28 en: 27 de Octubre de 2005, 23:55:00 »
Hola:

Aqui estan los archivos de ejemplo para que le den una mirada...! Sonrisa Gigante

http://miarroba.com/foros/ver.php?foroid=348538&temaid=3776827

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
RE: VB y COMUNICACION PIC VIA PARALELO LPT
« Respuesta #29 en: 09 de Noviembre de 2005, 00:34:00 »
Hola:

Ahora les dejo un pequeño ejemplo mas, esta ves para el puerto de Status (H379), este puerto funciona unicamente como estrada, es de 8 bits pero solamente estan disponibles en pines los 5 ultimos bists... y es como sigue:

S7   S6   S5   S4   S3   S2   S1   S0
11   10   12   13   15   X   X   X



El el ultimo bit (S7) es invertido, esto hay que tomar en cuenta al momento de hacer el programa....

Este es el diagrama...



Para este ejemplo ya no nos sirve proteus, pues no se puede simular los datos de entrada...


 

anything