Posez votre question Signaler

Port serie en java

jp - Dernière réponse le 8 mai 2008 à 17:30
Bonjour,
pour acceder au port serie COM1 sous win98 :

j'ecrit :
...
private CommPortIdentifier portID
.....
portID = CommPortIdentifier.getPortIdentifier ("COM1");
....

lors de l'execution, il me retourne un message d'erreur sur la ligne :
portID = CommPortIdentifier.getPortIdentifier ("COM1");
Que dois je modifier ???

Merci d'avance
@@ ++
Lire la suite 

Port serie en java »

6 réponses
Réponse
+1
moins plus
salut sava je veux le code source de Communication port serie avec le pc on utlisont le jbuilder
titi - 8 mai 2008 à 17:30
moi aussi j'ai le m^^^^^^^^^^^^ême problème que midooo svp une réponse car il ne reste pas le temps por mon projet,
merci
Ajouter un commentaire
Réponse
+0
moins plus
Je veux bien t'aider, mais pour cela, il me faudrait savoir de quel package provient la classe CommPortIdentifier.

...et bonne année!

;-)
Ajouter un commentaire
Réponse
+0
moins plus
Salut, en faite je desire obtenir ces signaux sur le port serie 1 de mon PC.

signal RTS:
1 -- -- -- -- -- ---------
0 -- -- -- -- --

signal TX:
1 - - - - - - - - - - ---------
0 - - - - - - - - - -

signal DTR:
1 -------------------- ---------
0 -

la classe CommPortIdentifier provient du packtage javax.comm
voila le programme complet, dans un premier temps,il ne produit que le signal TX :

//programme PortProjet

import javax.comm.*;
import java.io.*;

public class PortProjet extends Object {

private String nom;
private SerialPort port;
private CommPortIdentifier portID;
private OutputStream output;

/** Creates new PortProjet */
public PortProjet( String nom )throws Exception {
this.nom = nom;
try {
portID = CommPortIdentifier.getPortIdentifier ("COM1");
port = (SerialPort) portID.open ("gtr",2000);
output = port.getOutputStream ();
}catch (NoSuchPortException e){
System.out.println ("erreur");
}
}
public void initParamPort (int v,int d,int s,int p) throws Exception{
try{
port.setSerialPortParams (v,d,s,p);
}catch (UnsupportedCommOperationException e){
throw new Exception ("init impossible");
}
}

public void ecrire (byte [] b) throws IOException{
try{
output.write (b);
}catch (IOException e){
System.out.println ("zz");
throw new IOException ("eriture erreur");
}
}
}

// programme de test
import java.lang.*;
import java.io.*;
import javax.comm.*;

public class Test extends Object {
public static void main (String [] args) throws Exception{
PortProjet p = new PortProjet ("com");
p.initParamPort (9600,SerialPort.DATABITS_8,
SerialPort.STOPBITS_1,SerialPort.PARITY_NONE);
byte [] b = {1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0};
p.ecrire (b);
}
}

est ce que tu pourrais le modifier pour qu'il genere les 2 autres signaux.
Merci d'avance. et bonne année a toi aussi
) @@ ++
Ajouter un commentaire
Réponse
+0
moins plus
RTS:
110011001111111
TX:
101010101111111
DTR:
111111110111111
Ajouter un commentaire
Réponse
+0
moins plus
J'utilise actuellement le même package que toi et CommPortIdentifier.getPortIdentifiers() me renvoi un Enumeration à 0 élément alors que mon COM1 fonctionne correctement. Si entre temps tu as trouvé une solution à ton problème je veux bien que tu m'explique comme utiliser le package.
Ajouter un commentaire
Ce document intitulé « port serie en java » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook