Fala pessoal, blz?!!!
Seguinte, tô criando um aplicativo que conecta com uma porta usb e estou usando a biblioteca da Sourceforge, o LibusbJava. Pois bem, como não encontro quase nada sobre alguém usando essa API, decidi apelar pra vcs. O meu problema ocorre qdo tento abrir a conexão:
[code]public class Teste extends DeviceInfo{
Device dev;
public Teste(){
LibusbJava.usb_init();
LibusbJava.usb_find_busses();
LibusbJava.usb_find_devices();
LibusbJava.usb_get_busses();
}
public void valorInicial() {
setIdVendor((short) 0x0123);
setIdProduct((short) 0x4567);
setTimeOut(2000);
setConfig(1);
setInterface(0);
setAltInterface(-1);
setEntraEPBulk(0x81);
setSleepTimeout(2000);
setMaxTamDados(USB.FULLSPEED_MAX_BULK_PACKET_SIZE);
setMode(new TransferMode(TransferMode.Bulk));
}
public void abre(){
dev = USB.getDevice(getIdVendor(), getIdProduct());
try {
dev.open(getConfig(), getInterface(), getAltInterface());// Qdo chega aki...
System.out.println("Dispositivo inicializado");
} catch (USBException e) {
e.printStackTrace();
}
}
public void fecha(){
try {
if(dev != null){
dev.close();
System.out.println("Dispositivo fechado");
}
} catch (USBException e) {
System.out.println("Nenhum dispositivo aberto.");
}
}
}[/code]
A classe DeviceInfo tem os setters e getters necessários. Depois só chamo essa classe com um main. O problema é que quando chega no método de abrir (“dev.open(getConfig(), getInterface(), getAltInterface());”), ele trava o aplicativo e não retorna nenhum erro!!! só consigo fechar o programa usando o botão terminate do Eclipse. Será que é o dispositivo, a máquina, ou eu???!!?!?!?!
Vlw pessoal!!!