| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/11/2004 23:40:43
|
marciocamurati
JavaEvangelist
![[Avatar]](/images/avatar/7371364b3d72ac9a3ed8638e6f0be2c9.jpg)
Membro desde: 29/05/2004 14:54:36
Mensagens: 322
Localização: São Paulo
Offline
|
E ai galera, ainda estou me matando e não chegando a lugar nenhum, já montei o hardware mas o meu software não envia nada para a porta paralela fazendo com que o led se acenda na verdade o software na hora que chega no .write() fica em standy até eu dar um CTRL+C para para o processo, alguém pode me ajudar ?
Segue o código q estou usando atualmente.
[]s
|
Marcio Camurati |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/11/2004 06:31:48
|
Axel-Foley
Thread.start()
Membro desde: 03/11/2004 23:16:58
Mensagens: 48
Offline
|
estou exatamente com o mesmo problema:
http://www.guj.com.br/forum/viewtopic.php?t=17234
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/11/2004 08:48:13
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Bom, como eu tinha falado em um dos posts, o problema da porta paralela para você controlar leds é que você deve deixar uma das entradas de controle, não de dados, em um determinado nível lógico (não sei se é em 0) para que a porta possa receber bytes (simulando uma impressora on-line e pronta para receber comandos). Para deixar nesse nível lógico você precisa fazer uma pequena ligação no cabo - mas infelizmente não lembro mais qual é o tal sinal, portanto passo esta questão aos universitários.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/11/2004 10:42:19
|
Axel-Foley
Thread.start()
Membro desde: 03/11/2004 23:16:58
Mensagens: 48
Offline
|
deu certo!!!!!!!!!!
cara, é exatamente isso que o thingol falou... a javacomm joga pro driver do windows... e o windows espera um sinal da porta indicando que a "impressora esta online"
exatamente como o thingol disse...
o unico trabalho foi descobrir que pino era... e descobrimos que é o pino 11 (o BUSY), foi só mudar o nivel dele (pra 0) que ele parou de travar no write....
vou fazer mais testes aqui, mas parece que agora esta ok
valeuuuuu a todos!!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/03/2008 23:12:34
|
FightSurf George Maia
JavaChild
![[Avatar]](/images/avatar/7effc8914773ffc145f87c2da63fade2.jpg)
Membro desde: 02/03/2008 16:48:46
Mensagens: 118
Localização: João Pessoa
Offline
|
Estou com quase o mesmo problema Estou rodando a plaquinha no linux ubuntu. Em um programinha do windows que baixei pronto, tudo funciona direitinho. Quando mando o programa java que eu fiz rodar, os leds ficam acesos nesta sequencia: 01010101, apesar de eu ter mando 00000000 (0 em decimal int). Na sequência que já estava, o programa fica la no write e depois dispara este erro: "java.io.IOException: write to parallel port failed" Só depois da exception lançada, que o que eu realmente mandei acontece: os leds se apagam ou acendem, de acordo com o que enviei no momento. Alguém pode me ajudar? Meu código para consulta.
This message was edited 1 time. Last update was at 02/03/2008 23:13:47
|
George Maia
www.fightsurf.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/03/2008 00:16:12
|
FightSurf George Maia
JavaChild
![[Avatar]](/images/avatar/7effc8914773ffc145f87c2da63fade2.jpg)
Membro desde: 02/03/2008 16:48:46
Mensagens: 118
Localização: João Pessoa
Offline
|
Para fins de pesquisa e se alguém conseguir resolver esse problema, Por favor escreva aqui.
Pesquisei por alguns dias seguidos sobre a possibilidade de obter comunicação da porta paralela com java com alguns leds conectados diretamente aos pinos do 2 ao 8, como mostra alguns tutoriais na internet, mas especificamente no site do Gabriel Torres, ou do RogerCom.
De nenhuma maneira eu consegui êxito utilizando a api javax.comm sobre o linux para esta comunicação.
Baixei recentemente um programinha windows, feito em delphi, e de acordo com os bits que envio para cada pino da paralela, os leds se acendem e se apagam conforme a minha requisição. O que descarta as soldagens e montagem dos leds no cabo paralelo, tenham feitos de forma errada.
Só que no linux, utilizando a javax.comm, não deu certo ainda.
Pesquisei diversos tutoriais, mandei rodar os exemplos que vem na própria pasta da javacomm api e acontecem o mesmo problema que a minha aplicação feita do 0, usando as apis:
A aplicação começa a ser bem executada, mas quando chega no comando write, da classe OutPutStream, verificando no Debug, percebi que este método é segurado e o comando fica por lá até aproximadamente 1.5 minuto. Quando a aplicação começa a rodar aí, os leds se acendam nesta ordem: 01010101, apesar de eu ter mando 11111111(255) ou 00000000 (0 binário).
após 1 minuto e meio, ainda no método WRITE, uma exception é disparada com os seguintes dizeres:
java.io.IOException: write to parallel port failed
e depois que a exception é mostrada, os bits que realmente mandei para a paralelea são enviados: ou todos os leds se apagam, ou se acendem, conforme o meu comando.
Estive pesquisando estes dias e vi que estes erros perseguem muitos programadores ao redor do mundo, que tentam interfacear este esquema de leds no linux ou no windows com esta api.
Logo acima, parece que o nosso colega conseguiu a solução do problema. Mas pesquisando aqui no fórum do guj, vi que ele logo depois, em outro tópico, avisa que não deu certo e que precisava fazer mais testes.
Enfim, se alguém puder me ajudar a desenvolver esta solução em java puro, no caso, eu optei por utilizar o javax.comm, que se adquire no próprio site da sun, estou aberto a sugestões.
Abraço a todos.
|
George Maia
www.fightsurf.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/03/2008 14:29:59
|
FightSurf George Maia
JavaChild
![[Avatar]](/images/avatar/7effc8914773ffc145f87c2da63fade2.jpg)
Membro desde: 02/03/2008 16:48:46
Mensagens: 118
Localização: João Pessoa
Offline
|
Deixarei esta mensagem para fins de pesquisa.
Espero que seja útil no futuro e que poupe tempo de alguém quando for pesquisar sobre javax.comm.
Sobre o controle de envio de bits para a porta paralela, mais especificamente a brincadeira de testar o acender e apagar de leds, conectados diretamente aos pinos do 2 ao 8, com a API do java, dá certo sim.
Depois de dias pesquisando e depois de muita raiva, desisti do Java Comm, fui para o rxtx e depois para o Parport, soluções que saem da visão da Sun ou utilizam códigos feitos em C em um nível mais baixo.. Coisa que eu não estava querendo, mas apelando para isso dar certo. Eu gostaria de desenvolver este projeto em java puro, e agora consegui.
Depois de testar sem nenhum êxito, a solução foi soldar os fios correspondentes aos pinos 11 ao 25. Explicando: O pino 11 corresponde ao sinal "BUSY" da porta paralela. Então quando a minha aplicação iniciava, tudo aquela sequência de bits acendia indicando que o dispositivo estava ocupado. Então o que eu fiz, foi deixar o BUSY = 0, soldando algum fio nele que corresponda ao terra. Fiz com o pino 25, mas poderia ser qualquer um do 18 ao 25.
Com o Busy no terra, fio possível o total envio de bits para o dispositivo que montei, com os leds.
|
George Maia
www.fightsurf.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 06/03/2008 15:10:47
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Obrigado pela dica. Vai pra minha coleção de "Favoritos".
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/11/2009 10:28:10
|
bibop
Smalltalk
Membro desde: 05/11/2009 10:24:19
Mensagens: 2
Offline
|
Bom dia FightSurf George Maia,, se tiver como vc enviar os comando ai em java q vc finalizou a comunicaçao com os leds em java ficarei grato.
ricardogueds@hotmail.com
|
|
|
 |
|
|