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. 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
    1. RTS:
      110011001111111
      TX:
      101010101111111
      DTR:
      111111110111111
      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. Je veux bien t'aider, mais pour cela, il me faudrait savoir de quel package provient la classe CommPortIdentifier.

          ...et bonne année!

          ;-)
          0