Port serie en java

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
@@ ++

5 réponses

  1. salut sava je veux le code source de Communication port serie avec le pc on utlisont le jbuilder
    1
    1. 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
      0
  2. Je veux bien t'aider, mais pour cela, il me faudrait savoir de quel package provient la classe CommPortIdentifier.

    ...et bonne année!

    ;-)
    0
    1. 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
      ) @@ ++
      0
      1. RTS:
        110011001111111
        TX:
        101010101111111
        DTR:
        111111110111111
        0
        1. 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.
          0