Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > ASM y Microcontroladores
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 31-07-2008
dperezju dperezju is offline
Registrado
 
Registrado: jul 2008
Posts: 6
Poder: 0
dperezju Va por buen camino
ayuda con componente comport

buenas noches amigos del foro.

Creo que ya se ha hablado mucho des este tema pero bueno la verdad no he comprendido del todo como hacer la comunicacion de un programa en delphi hacia el puerto serie, es decir, configurarlo, mandar una señal al puerto, etc.

Mi intención es algo muy sencillo (eso creo):crear un programita en delphi que al presionar un boton mande una señal a un PIC por el puerto serie y este PIC a su vez envie una señal a un circuito que controle los aspersores de un jardin, solo que aun no he encontrado como enviar esa señal al puerto serie con el programita, he instalado los componentes APRO y Comport, he leido el post de Control relay pero no he entendido bien como es que funciona, quisiera que me ayudaran con el programita ya que en cuanto al hardware siento que no estoy tan perdido.

Espero que me puedan ayudar. Saludos!!!
Responder Con Cita
  #2  
Antiguo 31-07-2008
[FGarcia] FGarcia is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Cordoba, Veracruz, México
Posts: 1.123
Poder: 20
FGarcia Va por buen camino
De la programacion de los PIC y ensamblador se lo mismo que de astrofisica nuclear...¡nada!

De ComPort es tan simple como que envies solo esto:

Código Delphi [-]
//Por ejemplo al hacer click en un boton se envia una cadena 
ComPort1.WriteStr('tuComando');

por otro lado en el paquete del comport viene una carpeta de ejemplos, estudialos y practica.
Responder Con Cita
  #3  
Antiguo 31-07-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Hola amigos.

Lo que sobra aqui en este mismo sub-foro son ejemplos de como mandar un byte (comando a un micro) por el serial port.

Seria bueno que nos digas que componente usas para el puerto serie a ver si te damos una mejor ayuda.

Un Saludo.
Responder Con Cita
  #4  
Antiguo 31-07-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Veo que tienes Comport:

Aqui tienes un ejemplo:

Código Delphi [-]
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if not ComPort.Connected then
 ComPort.Open; Comport.WriteStr(#17);
end;

esto manda un byte al serial port.

Un Saludo.
Responder Con Cita
  #5  
Antiguo 31-07-2008
dperezju dperezju is offline
Registrado
 
Registrado: jul 2008
Posts: 6
Poder: 0
dperezju Va por buen camino
Exactamente, eso es lo que necesito, como enviar un byte al puerto serie, Al gonzalez me recomendo el componente APRO aunque precisamente en este foro he encontrado que mas personas usan el Comport aunque en los ejemplos aun no me queda muy claro el envio de los bytes al puerto, ya que con el comando:

ComPort1.WriteStr('tuComando');

En la parte de "tuComando" se envia una cadena, solo que necesito por ejemplo, un dato en binario o hexadecimal,y no se por que pines del puerto es donde obtengo esos bits, estas son las partes que aún no comprendo muy bien.

De antemano, gracias por su tiempo y ayuda.
Responder Con Cita
  #6  
Antiguo 31-07-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por dperezju Ver Mensaje
Exactamente, eso es lo que necesito, como enviar un byte al puerto serie, Al gonzalez me recomendo el componente APRO aunque precisamente en este foro he encontrado que mas personas usan el Comport aunque en los ejemplos aun no me queda muy claro el envio de los bytes al puerto, ya que con el comando:

ComPort1.WriteStr('tuComando');

En la parte de "tuComando" se envia una cadena, solo que necesito por ejemplo, un dato en binario o hexadecimal,
Ya te ha puesto [JoseFco] el ejemplo de como enviarlo,

Cita:
Empezado por dperezju Ver Mensaje
y no se por que pines del puerto es donde obtengo esos bits, estas son las partes que aún no comprendo muy bien.

De antemano, gracias por su tiempo y ayuda.
Hola

Lee este documento (en inglés) para que te des una idea de lo que estas preguntando.

En específico los pines 2 y 3 son los que se usan para transmitir y para recibir datos, sin embargo, los demas pines son muy importantes.

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #7  
Antiguo 31-07-2008
dperezju dperezju is offline
Registrado
 
Registrado: jul 2008
Posts: 6
Poder: 0
dperezju Va por buen camino
muchas gracias amigos, voy a probar lo que me han comentado y les digo como me fue.

Muchas gracias por su ayuda!!!
Saludos!!!
Responder Con Cita
  #8  
Antiguo 31-07-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Cita:
Empezado por dperezju Ver Mensaje
muchas gracias amigos, voy a probar lo que me han comentado y les digo como me fue.

Muchas gracias por su ayuda!!!
Saludos!!!
Por el pin 3 tu envias algo y por el pin 2 recives, el pin 5 lo pones a tierra en el board del micro.
No veo mayor complicacion en conectar un micro a un programita en Delphi.

Un Saludo.
Responder Con Cita
  #9  
Antiguo 31-07-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por JoseFco Ver Mensaje
Por el pin 3 tu envias algo y por el pin 2 recives, el pin 5 lo pones a tierra en el board del micro.
No veo mayor complicacion en conectar un micro a un programita en Delphi.

Un Saludo.
Depende amigo, depende , si estas hablando de un DB9 si, pero en DB25 es al revés y el Pin 5 es para DB9 y 7 para DB25

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #10  
Antiguo 31-07-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Cita:
Empezado por egostar Ver Mensaje
Depende amigo, depende , si estas hablando de un DB9 si, pero en DB25 es al revés y el Pin 5 es para DB9 y 7 para DB25

Salud OS
Todavia existen DB25? en que parte del mundo anu no llega el desarrollo?

Asi es maestro, como siempre estas en lo correcto y le cabe el derecho.


Un Saludo.
Responder Con Cita
  #11  
Antiguo 31-07-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por JoseFco Ver Mensaje
Todavia existen DB25? en que parte del mundo anu no llega el desarrollo?
Pues me gustaría decirle que ya no existen, pero pues si, aún siguen vigentes sobre todo para el uso con modems, debería darle una leída a cada una de las señales para que vea "pa' que" sirven

Cita:
Empezado por JoseFco Ver Mensaje
Asi es maestro, como siempre estas en lo correcto y le cabe el derecho.
Que paso mi amigo tan temprano está usted de agresivo

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #12  
Antiguo 31-07-2008
dperezju dperezju is offline
Registrado
 
Registrado: jul 2008
Posts: 6
Poder: 0
dperezju Va por buen camino
Ya hice el programita que me hizo favor de enviarme JoseFco:

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if not ComPort.Connected then
ComPort.Open; Comport.WriteStr(#17);
end;

no sin antes utilizar un boton que muestre la ventana de los settings del comport.
Bueno, (no se si estoy mal con lo siguiente) estoy usando el DB9 y quiero medir el voltaje que sale del pin 3 y el pin 5 para verificar que efectivamente estoy obteniendo un dato, pero no alcanzo a medir nada, no se si necesito forzosamente un MAX232 para obtener un poco más de voltaje para por lo menos encender un led y así continuar con lo de los aspersores que le habia comentado.
Responder Con Cita
  #13  
Antiguo 31-07-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Cita:
Empezado por dperezju Ver Mensaje
Ya hice el programita que me hizo favor de enviarme JoseFco:

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if not ComPort.Connected then
ComPort.Open; Comport.WriteStr(#17);
end;

no sin antes utilizar un boton que muestre la ventana de los settings del comport.
Bueno, (no se si estoy mal con lo siguiente) estoy usando el DB9 y quiero medir el voltaje que sale del pin 3 y el pin 5 para verificar que efectivamente estoy obteniendo un dato, pero no alcanzo a medir nada, no se si necesito forzosamente un MAX232 para obtener un poco más de voltaje para por lo menos encender un led y así continuar con lo de los aspersores que le habia comentado.
Hermano esta usted mas perdido que un raton en una ferreteria.Primero para leer un byte que salga del puerto serial tienes que tener un terminal o usar el mismo comport y puentiar los pines 2 y 3 asi te regresara y con el procedure ComPortRxChar pues leerlo.
En algunos PIC no hace falta el Max232.Pero que quieres subir el voltage a ver si enciendes un led? eso me deja saber dos cosas:

1) No tienes idea que es un puerto serie.
2)No tienes idea como trabaja un uC.

Para hacer lo que quieres amigo.Tienes que entender que el serial port solo podras conectarlo a un micro y recibir ese byte de data(comando)despues procesarlo y si es el comando que esperas, pues hacer algo con el.(encender un relay, un led,lo que se pueda conectar.
Nunca puedes usar el voltage del serial port para nada de eso.
Me gustaria poder ayudarte pero no trabajo los PIC y no tengo idea ni como configurar su puerto serial.
Te aconsejo encontrar algun projecto que este hecho para ese PIC que quieres usar y pues modificar tu programita Delphi de acuerdo a el.

Un ejemplo tu envias un byte de data al micro, este lo recive y entonces comparas ese byte, si es igual a lo que esperas entonces hacer una rutina que ponga uno de los pines de un puerto a cero (CLR) o lo pongas a 1 (SET), pero jamas usar un pin del puerto serie para conectar algo mas, como un led por ejemplo.

Un Saludo.
Responder Con Cita
  #14  
Antiguo 31-07-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Cita:
Empezado por egostar Ver Mensaje
Pues me gustaría decirle que ya no existen, pero pues si, aún siguen vigentes sobre todo para el uso con modems, debería darle una leída a cada una de las señales para que vea "pa' que" sirven



Que paso mi amigo tan temprano está usted de agresivo

Salud OS
Le prometo que antes que termine el año me aprendo los 25 pines del DB25.

Lo que no entiendo es lo de agresivo.

Acaso es alguno de esos componentes raros para serial port que tu recomiendas por aca.

Un Saludo.
Responder Con Cita
  #15  
Antiguo 31-07-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por JoseFco Ver Mensaje
Le prometo que antes que termine el año me aprendo los 25 pines del DB25.
Me parece bien, le recordare el primer día de 2009


Cita:
Empezado por JoseFco Ver Mensaje
Lo que no entiendo es lo de agresivo.

Acaso es alguno de esos componentes raros para serial port que tu recomiendas por aca.
No se haga Wey, sabe de lo que hablo

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #16  
Antiguo 31-07-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Cita:
Empezado por egostar Ver Mensaje
Me parece bien, le recordare el primer día de 2009




No se haga Wey, sabe de lo que hablo

Salud OS
jajajajajajaja para nada amigo, yo soy wey de fabrica.

Bueno y hablando de wey.Tengo dias que no hablo con Eduarcol, sabes algo de el?

Un Saludo.
Responder Con Cita
  #17  
Antiguo 31-07-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por JoseFco Ver Mensaje
jajajajajajaja para nada amigo, yo soy wey de fabrica.

Bueno y hablando de wey.Tengo dias que no hablo con Eduarcol, sabes algo de el?

Un Saludo.


Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #18  
Antiguo 02-08-2008
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Amigo josé no seas duro con el compañero , jajaja a él precisamente le hablé de ti por ser un experto en esto de la circuitería. El desea desarrollar un sistema en delphi que le permita por ejemplo encender un aspersor.

Tendrás alguna fuente que le puedas recomendar?, u orientarle sobre lo que debe investigar para conseguir su objetivo?.

Saludos
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #19  
Antiguo 02-08-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Cita:
Empezado por poliburro Ver Mensaje
Amigo josé no seas duro con el compañero , jajaja a él precisamente le hablé de ti por ser un experto en esto de la circuitería. El desea desarrollar un sistema en delphi que le permita por ejemplo encender un aspersor.

Tendrás alguna fuente que le puedas recomendar?, u orientarle sobre lo que debe investigar para conseguir su objetivo?.

Saludos
Hola mi Poli.
jajajajajajaja como que duro? para nada, lo que pasa es que el amigo comenzo muy bien este hilo y en el primer post del mismo el hombre esta muy claro.despues el hombre no solo quiere medir el voltage del pin 3, tambien quiere medir el del pin 5 y para rematar la cosa quiere elevar el voltage a estos pines a ver si puede conectar un led.Entendi mal?

Aqui esta la idea y cuando trabaje en ese programita lo deje universal,puedes usarlo en el micro que quieras y el antes de comenzar este hilo paso por el.
Control Relay.

Me gustaria poder ayudarlo en el hardware y en el firmware.Pero de PIC no se nada carnal.

PDile al amigo que el no conocer algo no es pecado,el pecado es no hacer el esfuerzo por aprenderlo.Siempre es mas lo que ignoramos que lo que podamos aprender.

Un Saludo.
Responder Con Cita
  #20  
Antiguo 02-08-2008
dperezju dperezju is offline
Registrado
 
Registrado: jul 2008
Posts: 6
Poder: 0
dperezju Va por buen camino
Pues esa era mi duda, si ya simplemente con lo que mandara un dato por el puerto serie podia controlar por ejemplo el PIC o un led pero ya revise que hay que utilizar forzamente el protocolo RS232 para la comunicación con el mismo PIC, no asi???

Y otra cosa que queria saber era, que dato necesito enviar al puerto serie por ejemplo en binario, hexadecimal o una cadena lo cual creo que el programa contro relay lo deja claro.

Saludos!!!
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
problemas con comport juanpa130679 Varios 1 30-03-2011 23:34:53
componente ComPort pollo_c Varios 12 03-08-2008 00:14:33
Ayuda con el Comport para Delphi por favor urg Andres_vl OOP 1 24-09-2007 18:21:19
Problemas con ComPort 3.0 jairo guzman C++ Builder 0 18-02-2007 01:12:31
comport interface elbert Noticias 1 05-11-2006 18:12:38


La franja horaria es GMT +2. Ahora son las 07:40:25.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi