TODOPIC
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.
¿Perdiste tu email de activación?
19 de Diciembre de 2014, 10:41:15

Ingresar con nombre de usuario, contraseña y duración de la sesión
Buscar:     Búsqueda Avanzada
352503 Mensajes en 39580 Temas por 41660 Usuarios
Último usuario: bibo
* Inicio Ayuda Buscar Calendario Ingresar Registrarse
Buscar en TodoPIC
+  TODOPIC
|-+  Lenguajes de programación para PC
| |-+  Delphi
| | |-+  Interfaz Delphi < ---- > dispositivos Electronicos
0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] 2 Marcar como favorito Imprimir
Autor Tema: Interfaz Delphi < ---- > dispositivos Electronicos  (Leído 11193 veces)
IIIC
Colaborador
PIC16
*****
Desconectado Desconectado

Mexico Mexico

Mensajes: 151



« : 17 de Julio de 2006, 15:31:29 »

Bien, mi nombre es Ivan y desde hace algun tiempo migre de visual C++ a Delphi por su rapidez en cuanto al desarrollo de software.

El área que mas me interesa es el enlace de Delphi con cualquier tipo de sistemas electronicos (la primera vez conecte la plancha a mi computadora), y quisiera que este hilo nos sirva para dar soluciones concretas al problema de enlace desde delphi a cualquier puerto.

bien para empezar iniciare con el puerto paralelo (el mas facil) para que de una vez empiecen a trabajar.

Sabemos que en las versiones de windows actuales no se permite acceder a los puertos tan facilmente,
Esto se debe de hacer en el mejor de los casos mediante una DLL que nos de acceso.

Para nuestra fortuna existe una libreria llamada inpout32.dll que hace todo el trabajo, que la pueden encontrar en muchos sitios de internet o pedirmela en mi correo.

Para cargar esta libreria hay que construir una nueva UNIT y declarar las funciones necesarias de la siguiente manera:

unit CargarLibreria;

interface
  procedure Out32(PortAddress: Word; Data: Byte); stdcall;
  function    Inp32(PortAddress: Word): Byte; stdcall;

implementation
  procedure Out32(PortAddress: Word; Data: Byte); external 'inpout32.dll';
  function Inp32(PortAddress: Word): Byte; external 'inpout32.dll';

end.

y ya con esto podemos llamar a las funciones   

                   Out32(Puerto, Dato)

                   Inp32(Puerto)

desde cualquier  porcion de codigo no sin antes anexar nuestra unidad en la clausula USES.


Para enviar el numero del puerto es   888 ó $378 (Hexadecimal)

Ejemplo:    Enviar un cero al puerto paralelo indispensable para inicializar el puerto y al cerrarlo.
////////////////////////////////////

                 Out32(888, $00);

/////////////////////////////////////

Para recibir o leer el dato  el puerto es   889 ó $379 (Hexadecimal)

Ejemplo:    Recibir un dato del puerto paralelo.
//////////////////////////////////////////

Declarar un dato tipo
 
            Dato: Byte;

y capturamos

            Dato := Inp32(889);
//////////////////////////////////////////

Eso es todo por el momento, la proxima ocasión les dire como estan organizados los bytes que recibimos de entrada y de salida, es decir la organizacion fisica del byte.

Al finalizar con el puerto paralelo seguiremos con el puerto serial.

Hasta pronto. Agradeceria que me dieran sus criticas.  Smile


 

 


En línea

"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas."

Albert Einstein
RedPic
Administrador
DsPIC33
*******
Desconectado Desconectado

Sexo: Masculino
Tibet Tibet

Mensajes: 5233



WWW
« Respuesta #1 : 17 de Julio de 2006, 15:41:02 »

Magnifico hilo este que has inaugurado. Muchas gracias por tu aporte, y adelante con él ...  Mr. Green

En línea

Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania
jfh900
Moderadores
DsPIC30
*****
Conectado Conectado

Sexo: Masculino
España España

Mensajes: 3555



« Respuesta #2 : 17 de Julio de 2006, 18:23:31 »

Muy buen hilo, pero... ¿Por que no subes la libreria?

Un saludo
En línea

* Cuando hables, procura que tus palabras sean mejores que el silencio.
* 'Todos somos ignorantes, lo que ocurre es que no todos ignoramos las mismas cosas.' Albert Einstein.
* No hay nada peor que un experto para evitar el progreso en un campo
* "La vida es como una novela. No importa que sea larga, sino que esté bien narrada" Seneca
* La vida no se vive por las veces que respiras, sino por los momentos que dejan sin aliento.
* Dios dijo: ∇·E=ρ/ε0 ; ∇·B=0 ; ∇xE=-dB/dt ; ∇xB= μ0ε0dE/dt..y la luz se hizo..!!..

Desde España Jesús
IIIC
Colaborador
PIC16
*****
Desconectado Desconectado

Mexico Mexico

Mensajes: 151



« Respuesta #3 : 17 de Julio de 2006, 20:00:57 »

Bien, creo que debo de ser consecuente con la filosioia de este hilo, "Dar soluciones concretas" asi es que, de aqui en adelante pondre cada uno de los recursos necesarios a disposicion de ustedes,  solo esperen un poco para hacerme de un espacio en la red y poner ahi todos los archivos. Smile
En línea

"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas."

Albert Einstein
IIIC
Colaborador
PIC16
*****
Desconectado Desconectado

Mexico Mexico

Mensajes: 151



« Respuesta #4 : 17 de Julio de 2006, 20:49:52 »


Bien, ya tengo un espacio.

Aqui tienen la dirección http://www.paginasprodigy.com/a53410500/compartidos/inpout32.zip

Si el link se rompe por favor me avisan, es un sitio permanente.
En línea

"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas."

Albert Einstein
IIIC
Colaborador
PIC16
*****
Desconectado Desconectado

Mexico Mexico

Mensajes: 151



« Respuesta #5 : 17 de Julio de 2006, 22:23:37 »

En esta siguiente parte del tema  Puerto Paralelo, queria señalar la forma en que se organiza el byte de entrada y de salida que nos proporcionan las funciones de la DLL.

Pero a cambio de eso les dejo un link a un pequeño programa que acabo de realizar para que vean graficamente la posicion de cada bit y su correspondiente sitio (fisico) dentro del conector DB-25.

http://www.paginasprodigy.com/a53410500/compartidos/pparalelo.zip

Nota: este archivo tambien contiene el archivo inpout32.dll

Continuare con una sencilla aplicación para controlar un Motor de Pasos bipolar.

Hasta pronto y ojala esten interesados en el tema.
En línea

"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas."

Albert Einstein
jfh900
Moderadores
DsPIC30
*****
Conectado Conectado

Sexo: Masculino
España España

Mensajes: 3555



« Respuesta #6 : 18 de Julio de 2006, 06:50:23 »

Por supuesto que nos interesa, es interesante el trabajo que estas realizando. Así que te anomo a que sigas. Yo soy un enamorado de Delphi. Por cierto que componentes usas para los led del programa?.

Un saludo y animo con el trabajo que estas realizando.
En línea

* Cuando hables, procura que tus palabras sean mejores que el silencio.
* 'Todos somos ignorantes, lo que ocurre es que no todos ignoramos las mismas cosas.' Albert Einstein.
* No hay nada peor que un experto para evitar el progreso en un campo
* "La vida es como una novela. No importa que sea larga, sino que esté bien narrada" Seneca
* La vida no se vive por las veces que respiras, sino por los momentos que dejan sin aliento.
* Dios dijo: ∇·E=ρ/ε0 ; ∇·B=0 ; ∇xE=-dB/dt ; ∇xB= μ0ε0dE/dt..y la luz se hizo..!!..

Desde España Jesús
IIIC
Colaborador
PIC16
*****
Desconectado Desconectado

Mexico Mexico

Mensajes: 151



« Respuesta #7 : 18 de Julio de 2006, 12:55:42 »

Bien, pensaba ir desarrollando una aplicacion para el puerto paralelo, pero se que todos ustedes son lo bastante listos para poder implementar correctamente las funciones que nos otorga la DLL, incluso veo que en otro lenguajes tambien presentan la implementacion de esta libreria (c++ y C# ver el tema en el foro).

Ustedes saben que con un poco de informacion se puede hacer trabajar el puerto en todos los modos necesarios EPP, ECP, etc...  solo es cuestion de alterar el byte de configuracion del puerto. (todo se resume a posiciones de memoria), pero si tienen mas preguntas por favor haganlas y juntos buscaremos una respuesta.

Por lo pronto ustedes, que estan acostumbrados al ambiente de Delphi, saben que algunas cosas se resuelven mediante los Componentes que algunos programadores liberan para nuestro uso, y gracias a todos ellos podremos avanzar facilmente en el tema del PUERTO SERIAL.

No hay mucho que decir y bastante que aprender, para el puerto serial es indispensable saber como se configuran sus parametros  (velocidad, paridad, etc...) y lo que cada uno e ellos implica.

En delphi estos parametro se pueden editar en el momento del desarrollo y demas se pueden activar eventos para saber en que momento se reciben datos.

Sin mas preambulo les dejo  la direccion donde pueden descargar el componente necesario para manejar el puerto serial

http://www.paginasprodigy.com/a53410500/compartidos/cport-3.10.zip

las instrucciones necesarias para la instalacion vienen dentro del archivo, es compatible con las versiones 4,5,6,7, 2005 2006.

Asi que a trabajar y aprender.   Les mando un saludo y pronto publicare algo sobre el puerto USB.

 

 
En línea

"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas."

Albert Einstein
IIIC
Colaborador
PIC16
*****
Desconectado Desconectado

Mexico Mexico

Mensajes: 151



« Respuesta #8 : 18 de Julio de 2006, 13:38:56 »

Ademas para que comiencen a experimentar con el puerto paralelo les dejo un buen tutorial a su disposicion (BONUS)

http://www.paginasprodigy.com/a53410500/compartidos/Interfacing Micro.zip

que nos muestra conexiones del los microcontroladores.

Desde un simple led o boton, hasta interfaces avanzadas LCD, Serial etc. espero les guste y sobre todo les sirva para sus proyectos.

Desde México un saludo a todos los del foro, que sin su ayuda no podria haber construido mi GTP USB LITE.

Continuara...
En línea

"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas."

Albert Einstein
Manofwar
Colaborador
PIC16
*****
Desconectado Desconectado

Sexo: Masculino
Mensajes: 156



« Respuesta #9 : 18 de Julio de 2006, 15:06:45 »

Hola IIIC, acabas de ahorrarme algunas horas buscando en la net el componente para el puerto serie.

1M de gracias.
En línea

Saludos desde Almería, España
maunix
Moderadores
DsPIC33
*****
Desconectado Desconectado

Sexo: Masculino
Argentina Argentina

Mensajes: 4751


Mauricio, Córdoba (Argentina)


WWW
« Respuesta #10 : 21 de Julio de 2006, 13:30:22 »

Hola IIIC, acabas de ahorrarme algunas horas buscando en la net el componente para el puerto serie.

1M de gracias.

Jejeje, un pasito por Enlaces, recursos, tutoriales y trucos de Delphi te hubiera ahorrado también muchas horas.

Echale un vistazo al TurboPower Async Professional
http://www.todopic.com.ar/foros/index.php?topic=11497.msg63351#msg63351

yo usaba el cport hasta que descubrí las librerias tpapro, te sugiero que pruebes ambos y saques tus propias conclusiones Smile Smile


Saludos
En línea

- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)
RedPic
Administrador
DsPIC33
*******
Desconectado Desconectado

Sexo: Masculino
Tibet Tibet

Mensajes: 5233



WWW
« Respuesta #11 : 21 de Julio de 2006, 13:33:58 »

Yo utilizo las TpaPro desde hace años y me sería muy dificil cambiar a otras sin que me presionasen mucho, mucho mucho ...  Mr. Green  Mr. Green  Mr. Green

 
En línea

Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania
Manofwar
Colaborador
PIC16
*****
Desconectado Desconectado

Sexo: Masculino
Mensajes: 156



« Respuesta #12 : 21 de Julio de 2006, 14:00:20 »

LocoLocoLoco

Si ya me lo decía mi madre cuando era pequeño, tienes que leer más, hijo, tienes que leer más.
En línea

Saludos desde Almería, España
maunix
Moderadores
DsPIC33
*****
Desconectado Desconectado

Sexo: Masculino
Argentina Argentina

Mensajes: 4751


Mauricio, Córdoba (Argentina)


WWW
« Respuesta #13 : 21 de Julio de 2006, 14:42:06 »

LocoLocoLoco

Si ya me lo decía mi madre cuando era pequeño, tienes que leer más, hijo, tienes que leer más.

Jajaja  lol lol  Mr. Green Mr. Green

Yo comencé con el CPORT y hace un par de años uso TPAPRO..... y como dice Diego, también me tendrán que amenazar con violencia para que los cambie...

Hace más de 10 años que se vienen desarrollando estos componentes y realmente funcionan muy bien, no tengo quejas en lo absoluto.  Las veces que no anduvieron es porque yo mal interpretaba alguna informacion.  Además cuentan con un par de PDFs realmente muy extensos donde se cubre (en alguna medida) todos los aspectos de cada componente.

Incluso un mismo ejecutable, con acceso a hardware como es el puerto serie, puedes usarlo en Win98, Windows NT, Windows 2000, Windows XP!  Osea --> excelente!!

El CPORT deja mucho que desear en ese aspecto.

Incluso, por ejemlo, el SIOW que viene con el CCS se ha programado con el TPAPRO Wink



En línea

- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)
RedPic
Administrador
DsPIC33
*******
Desconectado Desconectado

Sexo: Masculino
Tibet Tibet

Mensajes: 5233



WWW
« Respuesta #14 : 21 de Julio de 2006, 16:29:35 »

Como nota anecdótica sobre los TpaPro, y sobre todo su componente TapdComPort ....

Mi trabajo actual, en el que llevo dos años y ya me han hecho contrato indefinido, se lo debo en gran medida a haber podido montar en solo un par de días un programa Delphi que controlaba una red RS-485 con mas de cien dispositivos colgados ... llevaban meses intentándolo y nadie había sido capaz de solucionarlo con rápidez y elegancia.

TpaPro lo hizo, con un poco de ayuda por mi parte.  Mr. Green

En línea

Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania
jfh900
Moderadores
DsPIC30
*****
Conectado Conectado

Sexo: Masculino
España España

Mensajes: 3555



« Respuesta #15 : 21 de Julio de 2006, 16:32:30 »

Y delphi donde me lo dejas?  Smile

Un saludo
En línea

* Cuando hables, procura que tus palabras sean mejores que el silencio.
* 'Todos somos ignorantes, lo que ocurre es que no todos ignoramos las mismas cosas.' Albert Einstein.
* No hay nada peor que un experto para evitar el progreso en un campo
* "La vida es como una novela. No importa que sea larga, sino que esté bien narrada" Seneca
* La vida no se vive por las veces que respiras, sino por los momentos que dejan sin aliento.
* Dios dijo: ∇·E=ρ/ε0 ; ∇·B=0 ; ∇xE=-dB/dt ; ∇xB= μ0ε0dE/dt..y la luz se hizo..!!..

Desde España Jesús
valdorre
Colaborador
PIC18
*****
Desconectado Desconectado

Sexo: Masculino
Argentina Argentina

Mensajes: 346



« Respuesta #16 : 23 de Julio de 2006, 01:14:52 »

de donde me puedo bajar ese componente TpaPro??
saludos
En línea

Osvaldo
RedPic
Administrador
DsPIC33
*******
Desconectado Desconectado

Sexo: Masculino
Tibet Tibet

Mensajes: 5233



WWW
« Respuesta #17 : 23 de Julio de 2006, 04:43:42 »

TpaPro en http://sourceforge.net/projects/tpapro/
En línea

Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania
picpatagonia
PIC10
*
Desconectado Desconectado

Sexo: Masculino
Mensajes: 1


« Respuesta #18 : 26 de Julio de 2006, 11:35:27 »

Estimados:
               Con respecto a la comunicación por puerto USB, tendrían información, quizás algún componente para trabajarlo?
               Saludos desde Neuquén, Argentina.
 Smile
En línea
mariano_pic
PIC18
****
Desconectado Desconectado

Sexo: Masculino
Colombia Colombia

Mensajes: 485


WWW
« Respuesta #19 : 29 de Enero de 2007, 19:59:21 »

Hola amigos yo solia manejar el puerto paralelo con delphi, pero tengo un problema  Laughing desde que todo mundo usa xp no me funciona y bueno agradeseria un componente compatible con delphi 5 que no me moleste mas o una dll, con su correspondiente ayuda, a y que sea de libre uso.
Grasias mariano_pic
En línea

Servicio de desarrollo de proyectos electronicos, microcontroladores, diseño de software de electronica
http://mikropic.blogspot.com/
TODOPIC
   

 En línea
Páginas: [1] 2 Imprimir 
« anterior próximo »
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.20 | SMF © 2006-2008, Simple Machines XHTML 1.0 válido! CSS válido!
Página creada en 0.107 segundos con 23 consultas.