LusoRobótica - Robótica em Português
Software => Software e Programação => Tópico iniciado por: almamater em 12 de Janeiro de 2017, 11:23
-
Ois,
Precisa de ligar um micro\arduino ao PC por forma a enviar\receber pedidos de um conjunto de portas virtuais.
Ou seja, estou a usar o software com0com (http://com0com.sourceforge.net/), tenho uma aplicação que mediante os pedidos dá a resposta para uma das portas virtuais desta aplicação. Depois, se usar por exemplo o RealTerm e se me ligar na 2ª porta com0com (daquele par definido) consigo enviar os pedidos e receber as respostas sem problema.
A questão é fazer isto mas substituir o RealTerm por hardware\arduino, ligando o Arduino ao PC ele automaticamente fica numa determinada porta física, existe alguma maneira de ligar a porta virtual com0com com a porta do Arduino?
-
Ois,
Precisa de ligar um micro\arduino ao PC por forma a enviar\receber pedidos de um conjunto de portas virtuais.
Ou seja, estou a usar o software com0com (http://com0com.sourceforge.net/), tenho uma aplicação que mediante os pedidos dá a resposta para uma das portas virtuais desta aplicação. Depois, se usar por exemplo o RealTerm e se me ligar na 2ª porta com0com (daquele par definido) consigo enviar os pedidos e receber as respostas sem problema.
A questão é fazer isto mas substituir o RealTerm por hardware\arduino, ligando o Arduino ao PC ele automaticamente fica numa determinada porta física, existe alguma maneira de ligar a porta virtual com0com com a porta do Arduino?
O Arduino quando ligado ao PC vai ser uma dessas portas com0com... O teu texto não esta muito perceptível. Estava com o inkscape aberto e desenhei isto, confirmas que e' isto que queres? (podes tirar esta ideia para a próxima vez que quiseres expor um problema e não saibas como explica-lo)
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FUK7AbZh.png&hash=52cd37204980b9ffa99a9b71c184fd403a75a0db)
-
Pois se calhar não me expliquei bem..
(https://s29.postimg.org/6y949mlab/Draw.png) (https://postimg.org/image/6y949mlab/)
Objectivo é usar o Arduino em vez do RealTerm, mas a dúvida se calhar cai por terra qdo dizes que a porta do Arduino pode ser uma das portas do com0com, pois estava a pensar que não dava para atribuir uma dessas portas a um equipamento de forma manual..
P.S.: Não testei porque neste momento não posso, mas precisava de esclarecer isto para ver se dá para fazer o que quero.
-
Pois se calhar não me expliquei bem..
(https://s29.postimg.org/6y949mlab/Draw.png) (https://postimg.org/image/6y949mlab/)
Objectivo é usar o Arduino em vez do RealTerm, mas a dúvida se calhar cai por terra qdo dizes que a porta do Arduino pode ser uma das portas do com0com, pois estava a pensar que não dava para atribuir uma dessas portas a um equipamento de forma manual..
P.S.: Não testei porque neste momento não posso, mas precisava de esclarecer isto para ver se dá para fazer o que quero.
Agora perdi-me completamente :s
-
Oh pá.. LOL não me consigo explicar melhor! Mas mais logo, ao fim do dia, já tenho arduinos e afins e já vou testar aquilo que estou a dizer e confirmo se dá ou não mediante o que quero.
Mas basicamente quero meter um Arduino a Comunicar (TX\RX) com uma aplicação\simulador que utiliza o software de portas virtuais com0com.
-
Esse com0com é para criar uma porta com entre duas aplicações, não existem cabos, nem nada fisico, é uma emulação 100% software...
O Arduino com o atmega328 tem uma porta serial, que está nos pinos 0/1, mas que está tambem ligada ao FTDI/interface USB/Serial, se queres ter dados entre Arduino e o pc via essa porta não a podes usar para mais nada, podes é usar portas serial por software noutros pinos, mas com baud rates baixos ou vais ter perda de dados.
Aliás, pelo teu desenho só tens aplicações/programas, não estou sinceramente a ver como é que ai penduras um arduino, ou queres usar uma porta virtual para tirar os dados e enviar para o Arduino?
Parece-me que queres ver o que está a passar numa porta serial, e para isso, diria para pensares antes em usares simplesmente um usb-serial standalone ou um logic analyzer que faça decoding de protocolo serial..
-
substituir o RealTerm por hardware\arduino, ligando o Arduino ao PC ele automaticamente fica numa determinada porta física, existe alguma maneira de ligar a porta virtual com0com com a porta do Arduino?
Mas basicamente quero meter um Arduino a Comunicar (TX\RX) com uma aplicação\simulador que utiliza o software de portas virtuais com0com.
Entao se o teu simulador liga a uma porta virtual, nao dá para configurar a ligar a uma porta real fisica? Bastando para isso ligar um conversor serial USB e voila?
Se nao der para configurar a porta COM a usar (o q é estranho?) tens de arranjar um outro software que te faca a ligacao virtual de portas COM.
Mesmo assim se nao conseguires facilmente, podes fazer tu ou procurar algum software que o faca de enviar dados de uma porta para a outra.
COM A.open();
COM B.open();
while(1)
{
A.send(B.receive());
}
qq coisa assim.. mas ja deve existir.
Se o protocolo "estiver bem feito" e nao tiver problemas de timings. entao safa a coisa.
-
Pois, ou é muito simples e estou a complicar ou então tem que se dar algumas voltas e com software gratuito não se consegue fazer a coisa.
Especificamente o que fazer é usar o https://icculus.org/obdgpslogger/obdsim.html para me gerar e simular os valores, e o objectivo é ligar o Arduino à USB e fazê-lo comunicar com o com0com e com essas portas virtuais.
Em tempos penso que tinha chegado à conclusão que teria de redireccionar os dados entre as portas, mas não encontrei nenhum software free que me fizesse isso, os que instalei não resultaram e nunca mais peguei nisto..
-
Não entendo porque é que não é viável ligar o software diretamente ao Arduino, que se apresenta ao PC como uma porta série.
-
From manual:
http://icculus.org/obdgpslogger/manpages/render/obdsim.txt (http://icculus.org/obdgpslogger/manpages/render/obdsim.txt)
-t|--tty-device
Instead of opening a pty, try to open this entry in /dev
instead. POSIX only.
-w|--com-port <comport>
Specify virtual com port to be used on windows [eg "COM1"]. Win-
dows only.
Apesar de ai dizer "virtual" deve funcionar com qq porta, tal como no exemplo "COM1".
a opcao -t é para o linux.