problème import com.sun.comm.Win32Driver
Bonjour à tous,
Dans le cadre de mon projet, je dois récupérer les coordonnées d'un récepteur GPS, et les afficher sur une carte.
Pour les récupérer, j'ai fait un programme java ( 1 gérant les flux, et l'autre qui s'occupe des conversions) et j'ai importé le package javax.com dans eclipse.
1) Le problème c'est qu'eclipse me souligne encore
import com.sun.comm.Win32Driver;.
Je me suis inspiré du code sur dévellopez.com:
Voila l'adresse : http://christophej.developpez.com/tu...java/javacomm/
Après plusieurs recherche certains disent qu'ils faut enlever les lignes suivantes dans le programme:
import com.sun.comm.Win32Driver;
//initialisation du driver
Win32Driver w32Driver= new Win32Driver();
w32Driver.initialize();
Mais certains disent qu'ils faut modifier le fichier javax.comm.properties en mettant dedans:
driver=com.sun.comm.win32Driver
J'ai essayer les deux solutions mais Eclipse m'affiche à chaque fois une erreur.
Voici le code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
| import javax.comm.*;
import com.sun.comm.Win32Driver;
import java.io.*;
public class UtilisationFlux {
private BufferedReader bufRead; //flux de lecture du port
private OutputStream outStream; //flux d'écriture du port
private CommPortIdentifier portId; //identifiant du port
private SerialPort sPort; //le port série
/**
* Constructeur
*/
public UtilisationFlux(String port) {
//initialisation du driver
Win32Driver w32Driver = new Win32Driver();
w32Driver.initialize();
//récupération de l'identifiant du port
try {
portId = CommPortIdentifier.getPortIdentifier(port);
} catch (NoSuchPortException e) {
}
//ouverture du port
try {
sPort = (SerialPort) portId.open("UtilisationFlux", 30000);
} catch (PortInUseException e) {
}
//règle les paramètres de la connexion
try {
sPort.setSerialPortParams(
9600,
SerialPort.DATABITS_8,
SerialPort.STOPBITS_1,
SerialPort.PARITY_NONE);
} catch (UnsupportedCommOperationException e) {
}
//récupération du flux de lecture et écriture du port
try {
outStream = sPort.getOutputStream();
bufRead =
new BufferedReader(
new InputStreamReader(sPort.getInputStream()));
} catch (IOException e) {
}
}
/**
* Méthode de communication.
*/
public String communique(char envoie) {
String poids = null;
try {
//demande de poids
outStream.write((int) envoie);
//lecture du poids
poids = bufRead.readLine().trim();
} catch (IOException e) {
}
return poids;
}
/**
* Méthode de fermeture des flux et port.
*/
public void close(){
try {
bufRead.close();
outStream.close();
} catch (IOException e) {
}
sPort.close();
}
/**
* Méthode principale de l'exemple.
*/
public static void main(String[] args) {
//Récupération du port en argument
String port = args[0];
//Construction de l'interface à la balance
UtilisationFlux utilFlux = new UtilisationFlux(port);
//"interface utilisateur"
System.out.println("taper q pour quitter, ou ENTER pour le poids");
//construction flux lecture
BufferedReader clavier =
new BufferedReader(new InputStreamReader(System.in));
//lecture sur le flux entrée.
try {
String lu = clavier.readLine();
while (!lu.equals("q")) {
System.out.println(utilFlux.communique('$'));
lu = clavier.readLine();
}
} catch (IOException e) {
}
utilFlux.close();
}
} |
2) Est ce qu'on pourrait m'éclairer sur ce que je devrais mettre dans la méthode de communication du programme pour le cas du récepteur GPS?
Est ce que quelqu'un pourrait m'aider??
Merci
fichier win32Driver trouvé
Bonjour,
Je dois réaliser une application avec une petite interface pour recevoir ( et envoyer) des informations via un port RS232.
J'ai le même problème que vous et je crois avoir trouvé la solution. Il me semble que dans le zip téléchargeable à partir du tutoriel de Christophe Jollivet il manque les fichiers win32Driver dans l'archive comm.jar. J'ai donc continué les recherches dans ce sens et j'ai trouvé ceci :
http://www.cs.uml.edu/~fredm/courses...-javaxcomm.zip
J'ai ensuite refait l'installation :
- j'ai mis le fichier win32com.dll dans le dossier C:\WINDOWS\SYSTEM32
- le fichier javax.comm.properties dans le dossier C:\Program Files\Java\j2re1.4.2_03\lib
- le fichier comm.jar dans le dossier C:\Program Files\Java\j2re1.4.2_03\lib\ext
Puis relancer eclipse et miracle plus d'erreurs !!
Il me manque du matériel pour pouvoir tester ...
Dans un premier temps, mon but serai de pouvoir lire dans un port série de manière assez simple et de pouvoir récupérer le résultat sous forme de chaine de caractères.
Je débute en manière de communication RS232. Connaissez vous une méthode pour pouvoir faire cela ?
Merci