Está en la página 1de 13

Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?

q=node/8

La web de Seoane
Inicio Buscar Rss Contacto Login

Inicio

Buscar:
Controlar dispositivos por el puerto serie
Enviado por admin el Sáb, 2007-04-07 15:50.

Si alguna vez has pensado en controlar algún dispositivo desde tu PC puede que Contenido
este truco pueda servirte. En este caso se activa o desactiva un rele, que a su vez Inicio
actúa como un interruptor que permite encender o apagar "cualquier cosa" (una
Buscar
luz, una puerta automática, etc.).
Rss
Para realizar esto vamos a usar el puerto serie del PC, mas concretamente el pin
Contacto
RTS que en un conector de 9 pines es el numero 7. El circuito se ha reducido para
Login
que resulte sencillo y no utilice demasiados componentes, su funcionamiento es
muy básico cuando activamos RTS tendremos una tensión positiva que activara el
Enlaces
rele, si desactivamos RTS tendremos una tensión negativa y el rele volverá a su
estado de reposo. (Siento no entrar en más detalles, intento no utilizar palabras Al González
técnicas para que todos puedan entenderlo, pero resulta difícil) Cadetill

Carlos G.
El circuito sería el siguiente (no es fácil dibujar con letras):
DelphiAccess

Egostar
V+
Jachguate
|
Jhonny
+------+
| | Neftali
_ ------- Roman
D2 ^ | / | RELE
Salvador Gomez
| -------
| | El blog de cadetill
+------+
| Jugando con la API de Google Maps

| c (VIII) – personalizar el mapa

| / Jugando con la API de Google Maps


D1 R1 |/ (VII) – marcando el mapa
RTS >--->|-+--/\/\/\/\----------| T1 XXIII Concurso de Castells de
R2 | |\ Tarragona
+--/\/\/\/\--+ | \ e
Saber en qué panel de un TStatusBar
| |
está el cursor del ratón
GND >------+----------------------+-----< GND
Facilitando el acceso a ficheros ini

R1,R2 10K más

D1,D2 1N4007
T1 BC517
V+ 6V..12V

En cuanto al software, tenemos esta función que, pasándole como parámetros el


puerto y el tiempo de espera en milisegundos, activa RTS y la mantiene activa
durante el tiempo de espera para después volver a desactivarla.

1 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

function Activar_RTS(Puerto: String; Espera: Cardinal): String


var
hPort: THandle;
DCB: TDCB;
begin
Result:= '';
Puerto:= Uppercase(Puerto);
// Cambiar esto si es necesario un puerto diferente
if (Puerto<>'COM1') and (Puerto<>'COM2') then
exit;
hPort:= CreateFile(PChar('\\.\'+Puerto), GENERIC_READ or GENERIC_WRITE
OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
if hPort<>INVALID_HANDLE_VALUE then
begin
DCB.DCBlength:= sizeof(DCB);
if GetCommState(hPort,DCB) then
begin
with DCB do
begin
BaudRate := CBR_9600;
ByteSize := 8;
Parity := NOPARITY;
StopBits := ONESTOPBIT;
Flags := $01;
end;
if SetCommState(hPort, DCB) then
begin
EscapeCommFunction(hPort,SETRTS);
Sleep(Espera);
EscapeCommFunction(hPort,CLRRTS);
end;
end;
CloseHandle(hPort);
end;
end;

Ejemplo de uso:

Activar_RTS('COM1',5000);

Ahora bien, seria interesante poder activar y desactivar el rele a discrepcion. Para
eso, vamos a tener una funcion que lo encienda y otro que lo apague. Pues bien lo
primero que tenemos que hacer es declarar la variable hPort como global, y
separar la función de arriba en 4:

2 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

var
hPort: Thandle;

procedure AbrirPuerto(Puerto: String);


var
DCB: TDCB;
begin
Puerto:= Uppercase(Puerto);
// Cambiar esto si es necesario un puerto diferente
if (Puerto<>'COM1') and (Puerto<>'COM2') then
exit;
hPort:= CreateFile(PChar('\\.\'+Puerto), GENERIC_READ or GENERIC_WRITE
OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
if hPort<>INVALID_HANDLE_VALUE then
begin
DCB.DCBlength:= sizeof(DCB);
if GetCommState(hPort,DCB) then
begin
with DCB do
begin
BaudRate := CBR_9600;
ByteSize := 8;
Parity := NOPARITY;
StopBits := ONESTOPBIT;
Flags := $01;
end;
if SetCommState(hPort, DCB) then
Exit;
end;
CloseHandle(hPort);
hPort:= INVALID_HANDLE_VALUE;
end;
end;

procedure CerrarPuerto;
begin
if hPort <> INVALID_HANDLE_VALUE then
begin
CloseHandle(hPort);
hPort:= INVALID_HANDLE_VALUE;
end;
end;

procedure ActivarRTS;
begin
if hPort <> INVALID_HANDLE_VALUE then
EscapeCommFunction(hPort,SETRTS);
end;

procedure DesactivarRTS;
begin
if hPort <> INVALID_HANDLE_VALUE then
EscapeCommFunction(hPort,CLRRTS);
end;

Antes de usar el puerto tienes que llamar la función AbrirPuerto y cuando dejes de
usarlo CerrarPuerto. Las funciones ActivarRTS y DesactivarRTS hacen lo que
parece activar y desactivar RTS, para que funcionen el puerto tiene que estar
abierto.

Versión para impresora

Amigo disculpa, no podrías


Enviado por walter (no verificado) el Vie, 2008-02-08 02:07.

Amigo disculpa, no podrías decirme como se hace esto mismo en visual basic.

3 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

Yo se que esta pagina esta dedicada a delphi, pero nunca he programado en


este lenguaje.. gracias

responder

Pues hace mucho tiempo que


Enviado por admin el Vie, 2008-02-08 02:20.

Pues hace mucho tiempo que no toco el vb, pero si no recuerdo mal se
podía acceder a las APIs sin ningún problema por lo que no hay razón para
que no puedas usar las funciones EscapeCommFunction, SetCommState,
CreateFile, etc ... Por otro lado si estas usando .NET entonces la cosa
cambia ya que no puedes acceder directamente a esas APIS, tendrás que
buscar algún componente que maneje el puerto serie, pero como ya te
dije, de vb se bastante poco.

responder

disculpa la molestia lo que


Enviado por Daniel (no verificado) el Sáb, 2008-03-01 03:24.

disculpa la molestia lo que necesito es enviar toda una trama bajo protocolo
RS232, por ejemplo enviar una cadena de caracteres ASCII. Lo que no se es que
si es posible hacerlo bajo WinXP, ya que me dijeron que los accesos a puertos
están restringidos. De ante mano muchas gracias por todo.

responder

En Windows XP lo que no se
Enviado por admin el Sáb, 2008-03-01 15:04.

En Windows XP lo que no se puede es acceder directamente a los puertos,


como si se podía por ejemplo en windows 95/98 usando instrucciones en
ensamblador. Pero si que se puede enviar y recibir datos por el puerto
serie sin problemas.

Por ejemplo, en el código de arriba, la función "AbrirPuerto" obtiene un


handle (manejador) y lo guarda en la variable hPort, observa también que
dentro de esta función se configuran los parámetros de la comunicación
(velocidad, paridad, etc ...). Una vez que tenemos ese handle podemos
usar las funciones WriteFile y ReadFile para leer y escribir en el puerto
como si lo estuviéramos haciendo en un archivo. solo tienes que tener en
cuenta, que al leer, si no hay bastantes bytes almacenados en el buffer la
función readfile se quedara parada hasta que reciba los bytes que le has
pedido, por eso es aconsejable utilizar la función ClearCommError para
determinar el numero de bytes que hay almacenados en el buffer.

En resumen busca información sobre, ReadFile, WriteFile y


ClearCommError, o si prefieres algo mas sencillo busca algún componente
para delphi que realice todo esto por ti, hay algunos muy populares.

responder

Tengo una rutina en VB 6


Enviado por Juan (no verificado) el Jue, 2008-06-26 18:36.

Tengo una rutina en VB 6 para leer el puerto serial, pero cuando me

4 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

mando una cadena de 80 caracteres la lee en dos partes y algunas


veces la lee toda y la mayoría de las veces la lee truncada, 20 , 50 o
70 caracteres, podrias orientarme como puedo hacerle para que la
lea en una sola vez??.

Saludos y Gracias.

responder

Lamentablemente mis
Enviado por admin el Jue, 2008-06-26 22:53.

Lamentablemente mis conocimientos de VB 6 son limitados así


que no puedo ayudarte demasiado, pero lo que yo haría en tu
caso es usar algún carácter para separar las cadenas. Ten en
cuenta que leyendo el buffer del puerto serie no sera capaz de
distinguir el final de una cadena y el comienzo de otra si no las
separas de alguna manera.

responder

Estimado: Estoy
Enviado por Gabriel (no verificado) el Mié, 2008-04-09 01:31.

Estimado:

Estoy experimentando poder utilizar este circuito y programacion para que al


hacer un click en un programa de broadcasting se encienda una luz de ON AIR.
es factible? Gracias desde ya!!
Un cordial abrazo.-

responder

Pues no veo porque no,


Enviado por admin el Mié, 2008-04-09 14:32.

Pues no veo porque no, siempre que la luz pueda ser activada por medio
de un relé. Consulta en las características del relé que compres para
comprobar que se ajustan al voltaje y potencia de la luz que quieres
encender.

responder

Buenos Días: Gracias por


Enviado por Iván Caballero Cano (no verificado) el Vie, 2008-09-12 18:18.

Buenos Días:

Gracias por compartir tus conocimientos con la humanidad ! : )

Haciendo un llamado a tu amabilidad y abusando de ella quiero hacerte unas


preguntas esperando que me las puedas contestar:

Antes que eso, soy programador, no muy bueno pero lo soy, y de electrónica
realmente no se mucho pero estoy elaborando un sistema
de control de acceso a una escuela por medio de credenciales con codigo de
barras. Se trata entonces de que cuando una credencial pase la prueba de
acceso, la computadora mande una señal a una "chapa" eléctrica de una puerta

5 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

y se abra. Son muy comunes en los consultorios médicos para que la secretaria
no se tenga que parar a abrir la puerta o en otros lados.
Normalmente ese tipo de chapas ya vienen listas para conectarles un par de
cablecitos que vienen de un transformador o "eliminador" como les llamams en
Mexico..de esas cajitas negras que venden para dar la corriente adecuada a
dispositivos electrónicos de casa como juguetes, aparatos eléctricos
domesticos como lamparas, celulares etc.

Este tipo de chapas funciona de tal manera que cada vez que se aprieta un
boton..se envia una corriente electrica y se activa el mecanismo de la chapa y
abre..asi de facil. ¿Esté circuito tuyo me sirve para eso?

Otra pregunta.. en el diagrama hasta arriba viene una V+ y supongo que esa se
conecta al PIN Numero 7 del puerto y entonces:
Se conecta unicamente 1 solo cable a ese pin?? nomas así?

Que es el RTS y el GND?


El T! es un relay o que es? ¿EN caso de que alguno de los dispositivos tengan 3
patitas..cuales se deben usar?

Que partes de este circuito debo variar por ejemplo si resulta que la "chapa" de
la puerta ocupa un voltaje mayor que el que da este circuito?

Es posible que "truene" la computadora si me equivoco y conecto mal algo?

Gracias. Perdón por el abuso de preguntas..pero me gustaría mucho entender


esto.

responder

Intentare responder a tus


Enviado por admin el Dom, 2008-09-14 20:07.

Intentare responder a tus preguntas Ivan.

- Si, este circuito sirve para activar ese tipo de mecanismos.


- V+ Es la tensión de alimentación, es decir, estaría conectado al polo
positivo del trasformador.
- Gnd se corresponde al polo negativo del trasformador y del lado del
puerto al pin número 5 (en un conector de nueve pines)
- T1 es un transistor, en cuanto a que "patitas" usar consulta las
especificaciones del fabricante.
- RTS se corresponde con el pin número 7 del puerto serie (en un conector
de 9 pines). Aquí puedes encontrar un esquema de los pines de un puerto
serie http://www.beyondlogic.org/serial/serial.htm

Y por ultimo ... si que es posible que tu computadora sufra daños e incluso
se queme la placa base si te equivocas, por eso es mejor que busques
ayuda de alguien con un poco de experiencia. En cualquier caso son muy
importantes los diodos d1 y d2, sobre todo d2 que protegerá tu
ordenador de picos de tensión (chispazos) provocados al conectar o
desconectar el relé.

responder

Mira a mi me encargaron que


Enviado por Cross Marian (no verificado) el Lun, 2009-01-05 22:41.

Mira a mi me encargaron que hiciera un lector asignador (asi me dijo el profe)

6 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

de codigos para tarjeta chip (como las de los celulares GSM) pero la verdad es
que no he encontrado la forma de hacerlo podrias ayudarme la idea es que
haga algo asi mas o menos como lo digo el colega Ivan solo que pues tu
codigo me resuelve el abrir la puerta pero necesito que sea con ciertas claves
que lo haga ye so la verdad es que no se

responder

Si tienes que abrir una


Enviado por admin el Mar, 2009-01-06 03:52.

Si tienes que abrir una puerta el circuito y el código del que hablo puede
ayudarte, pero para leer y escribir la tarjeta chip vas a tener que buscar
información en otro sitio. Yo empezaría por consultar la documentación o
la web del fabricante del lector para saber si tiene alguna librería que
puedas usar.

responder

Hola esta muy buena la ayuda


Enviado por Jonathan (no verificado) el Mar, 2009-03-17 22:10.

Hola esta muy buena la ayuda pero hay algo que me tiene loco, trate de hacer
uno de estos procedimientos desde una DLL y la verdad no pude o no supe
como ponerlo a funcionar, esta es mi función:

function AbrirPuerto: Boolean;stdcall;


var
DeviceName: array[0..80] of Char;
ComFile:Thandle;
begin

{ primero se abre la comunicacion para lectura y escritura.


se utiliza la funcion de Win32 "create file".}
StrPCopy(DeviceName, 'COM1:');

ComFile := CreateFile(DeviceName, GENERIC_READ or GENERIC_WRITE

if ComFile = INVALID_HANDLE_VALUE then


Result := False
else
Result := True;
end;

Pero inmediatamente me sale 6 errores cada uno perteneciente a los


parámetros usados por la función "Create File" en las 2 lineas a continuación:

ComFile := CreateFile(DeviceName, GENERIC_READ or GENERIC_WRITE

if ComFile = INVALID_HANDLE_VALUE then............

La verdad no se que estoy haciendo mal o que me falta colocar dentro de la


DLL, sera alguna declaración dentro de "Uses" porque cuando lo hago en un
form normal me funciona.

Me gustaría me pudieras ayudar.

responder

Prueba añadiendo Windows a

7 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

Enviado por admin el Mar, 2009-03-17 22:49.

Prueba añadiendo Windows a las uses.

responder

Hola , Tengo 0 Conocimientos


Enviado por danotex (no verificado) el Jue, 2009-03-19 18:41.

Hola , Tengo 0 Conocimientos de electrónica, Como tengo que hacer para


conectar una salida del puerto serie a un relé(donde lo compro) y luego para
encender o apagar un Aire creo que necesito un Contactor, este puedo
conectarlo al relé???

Quiero empezar con lo mas simple que es encender y apagar una luz, que
elementos de hardware tengo que comprar y como los tengo que conectar
para desde la computadora poder controlar el encendido y apagado de una
luz??? Mi objetivo final es el de arriba pero pienso que primero debo poder
prender y apagar una lamparita

Muchas Gracias

responder

Hola, es interesante el
Enviado por Paramaconny (no verificado) el Sáb, 2009-03-28 07:59.

Hola, es interesante el circuito. Mi preguta es la siguiente, ¿Este ciruito funciona


para activar solamente un torniquete de contacto seco? si es asi, ¿Como se
conecta a la tarjeta del torniquete? Consulte al fabricante y me comentó que
los contactos secos NO pueden recivir ningún tipo de voltaje. El contacto seco
es simplemente hacer un puente entre los dos pin y eso activa el torniquete
para permitir el acceso, cuando gira la perilla metálica, el mecanismo interno
del torniquete pulsa un boto de un interuptor y bloquea nuevamente el
torniquete. Disculpa tantas palabras, espero su respuesta. Gracias, y que
tengan un buen tiempo todos en este importante foro.

responder

Si he entendido bien quieres


Enviado por admin el Sáb, 2009-03-28 16:28.

Si he entendido bien quieres activar un dispositivo que normalmente se


controla por medio de un interruptor, que puentea dos pines. Si es así
sencillamente usa el relé que muestro en el esquema para puentear esos
dos pines. Al fin y al cabo un relé no es mas que un interruptor controlado
por un circuito eléctrico.

http://es.wikipedia.org/wiki/Relé

responder

Hola muy bueno muchas gracia


Enviado por 73W (no verificado) el Mar, 2009-06-30 13:52.

Hola muy bueno muchas gracia todavía mucho no entiendo .. pero me va a


servir jeje grax

8 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

responder

Hola. Hice el programa, pero,


Enviado por Dionnis (no verificado) el Mar, 2009-12-29 04:10.

Hola. Hice el programa, pero, como se que esta funcionando sin poner el relé.
Como hago para poner mensajes de error en caso que no se active el puerto,
hay alguna excepción que devuelva Windows?
Es interesante el programa, pero siento que falta eso. Por favor ayúdenme.

responder

Revisa el valor que devuelven


Enviado por admin el Mar, 2009-12-29 13:18.

Revisa el valor que devuelven las funciones CreateFile y


EscapeCommFunction. La primera devolverá INVALID_HANDLE_VALUE si el
puerto esta ocupado por otra aplicación o no esta disponible, y la segunda
devolverá cero si no es capaz de activar la patilla RTS. Haciendo los
ajustes convenientes en el código para controlar que valores devuelven
esas dos funciones, no tendrás ningún problema.

responder

Muy buen articulo,


Enviado por DJ-MAD (no verificado) el Mar, 2009-12-29 16:55.

Muy buen articulo, enhorabuena. Espero no haber llegado muy tarde y que el
hilo no esté cerrado. He probado el código y me funciona perfectamente. Con
un led consigo encender, apagar, destellos a distintas velocidades .. con un
pequeño control slide en delphi.

El siguiente paso era poder encender/apagar un bombilla común de una casa.


He intentado probar a poner directamente a la salida de los pines del puerto
un relé de 6v y no consigo que se mueva. (Como si no tuviese fuerza). Lo de
simplificar ... como que quitar el transistor es pasarse n? xD

Voy a pillarme el transistor para probar. El único problema es q .. ¿el circuito


debe alimentarse al usarse un transistor n?.
En caso que esto funcione .. a ver si se pudiese hacer algo similar mediante
usb.

Gracias.

PD: Soy programador en delphi. Me gustan mucho estos temas relacionados


con la "domotica" .. si puedo ayudar en algún proyecto.. estaría encantado.
Enhorabuena!!

responder

Es normal que no puedas


Enviado por admin el Mar, 2009-12-29 21:58.

Es normal que no puedas activar el relé directamente desde el puerto


serie, la intensidad que puede suministrar este puerto esta muy limitada, y
si bien llega para encender un led o hacer funcionar un ratón de los
antiguos, los que iban por puerto serie, no es suficiente para un rele.

9 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

Si utilizas el circuito con el transistor, claro que necesitas alimentación


externa. Precisamente esa alimentación externa es la que suministrara esa
potencia extra que se necesita para activar el relé.

Pero si tu objetivo es encender una luz, o algún otra carga de tipo


resistivo, y no quieres usar alimentación externa busca en google
información sobre "solid state relay" o también puedes echarle un vistazo a
esta pagina donde salen varios ejemplos con optoacopladores, para el
puerto paralelo, pero básicamente es lo mismo.

http://www.epanorama.net/circuits/parallel_output.html

responder

Hola, estoy queriendo abrir


Enviado por Marcelo (no verificado) el Sáb, 2010-02-06 17:24.

Hola, estoy queriendo abrir un portero electrónico con un sistema en delphi.


Esta función me sirve para tal caso?. El portero abre con 12volts.
SLDS y gracias.

responder

Si, si que sirve. Solo


Enviado por admin el Sáb, 2010-02-06 17:39.

Si, si que sirve.

Solo tienes que usar el relé como un interruptor para aplicar los 12 voltios
al portero.

Incluso, por ahorrar componentes, se podría sustituir en el esquema el relé


por el propio portero automático, siendo así el propio transistor el
encargado de activar el portero. Aunque esta opción ya requiere algunos
conocimientos de electrónica si no quieres quemar el puerto serie por
error.

responder

Ahora, si la pc no tiene
Enviado por Anonimo (no verificado) el Lun, 2010-02-08 17:09.

Ahora, si la pc no tiene puerto serie disponible... se podrá poner un


adaptador serie-usb ?. será lo mismo , no quemará nada?
SLDS y mil gracias por tus respuestas!

responder

No veo porque no. No lo he


Enviado por admin el Lun, 2010-02-08 22:06.

No veo porque no. No lo he probado, pero si el adaptado


Usb-Serie cumple con todos los estándares de la comunicación
serie debería de funcionar.

responder

AGRADECIMIENTO Mis mas

10 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

Enviado por Jaime Pacheco (no verificado) el Mié, 2010-02-24 17:11.

AGRADECIMIENTO

Mis mas sinceros agradecimientos para el admin del tema.


Quisiera saber si el código de este proyecto me podría servir para
lograr controlar un lector de etiquetas RFID y recuperar el numero del
identificador
en una variable del programa, no se como leer el valor obtenido por el lector
que tiene conexión RS232.

Gracias de antemano.

responder

El código que describo mas


Enviado por admin el Mié, 2010-02-24 21:51.

El código que describo mas arriba no utiliza el puerto para establecer una
comunicación serie, se limita a usar uno de los pines del puerto para
activar y desactivar un interruptor.

En el caso que tu propones te recomendaría usar algunos de los múltiples


componentes que hay disponibles para delphi y que permiten leer datos a
través del puerto serie.

Si quieres profundizar mas en el tema te recomiendo que preguntes en


alguno de estos foros:
www.delphiaccess.com
www.clubdelphi.com

Seguro que en cualquiera de los dos te podrán ayudar

Saludos

responder

Hola, estoy por utilizar el


Enviado por Nando (no verificado) el Dom, 2010-04-18 19:13.

Hola, estoy por utilizar el circuito, pero no me queda claro la conexión del
relevador y la toma de corriente eléctrica. Necesito encender/apagar una luz
desde C#. Espero puedas aclarar un poco mas el circuito, tengo un relevador
de 5 pines (JQC-3FC T73) azul.

responder

Pues el relé tiene dos


Enviado por admin el Dom, 2010-04-18 23:22.

Pues el relé tiene dos patillas que corresponden a la bobina, que son las
que aparecen en el circuito. La otras tres pertenecen al interruptor que
activa la bobina, y es lo que debes utilizar para manejar la bombilla. Si
necesitas mas aclaraciones consulta el manual del relé o pregunta en la
tienda donde lo compraste.

responder

Saludos Amigo: La verdad es

11 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

Enviado por alberto correa (no verificado) el Jue, 2010-06-17 18:51.

Saludos Amigo:

La verdad es un excelente trabajo este diagrama, lo he probado y funciona a la


perfeccion. Solo tengo una duda: para hacer el control de dos dispositivos con
el mismo puerto, segun alguna vez leí, se tenian que utilizar las lineas de rts y
gnd para uno y cts y gnd para el otro, es asi de simple?

es decir, seria el mismo circuito y funciones para cts? o me dieron informacion


equivocada :D.

Muchas gracias por esta info, de verdad es muy valiosa

responder

En concreto se usaría RTS y


Enviado por admin el Jue, 2010-06-17 22:12.

En concreto se usaría RTS y DTR (pin 4). El circuito sería el mismo para los dos
dispositivos, cada uno conectado a un pin diferente (pin 4 y pin 7), y GND sería
común para ambos.

Para controlar DTR debes usar las constantes CLRDTR y SETDTR al igual que
usamos CLRRTS y SETRTS para RTS. Por lo demás el software no necesitaría
mas modificación, aunque recuerda que el puerto solo lo debes de abrir una
vez aunque lo uses para controlar dos señales diferentes.

responder

Saludos, una gran duda donde


Enviado por Malagana (no verificado) el Vie, 2010-09-24 04:14.

Saludos, una gran duda donde puedo comprar ese dispositivo o una guía paso
a paso para construirlo, mis conocimientos de electrónica son prácticamente
nulos pero creo que eso es exactamente lo que necesito para activar un pistón
neumático conectado a un relevador desde mi programa.

responder

Pues no se donde puedes


Enviado por admin el Vie, 2010-09-24 14:52.

Pues no se donde puedes comprar algo similar, ya hecho, pero creo que si
vas a una tienda de componentes electrónicos, les explicas lo que quieres
hacer y le enseñas el esquema te darán alguna solución. Es importante que
les expliques lo que quieres hacer porque puede que dispongan de algún
dispositivo comercial que haga la misma función y sea barato.

responder

Enviar un comentario nuevo


Su nombre:

E-mail:

12 de 13 09/10/2010 22:53
Controlar dispositivos por el puerto serie | La web de Seoane http://delphi.jmrds.com/?q=node/8

El contenido de este campo se mantiene privado y no se mostrará públicamente.

Página principal:

Comentario: *

Formato de entrada

copyright (c) 2007 - 2010 Domingo Seoane

13 de 13 09/10/2010 22:53