Test ecriture / Lecture en Java : Port Serie RS232

Résolu
lionkid007 Messages postés 4 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 22 mars 2008 - 19 févr. 2008 à 11:13
 dms006gn - 16 mars 2011 à 12:56
Bonjour,

Je dois faire un programme permettant de communiquer sur le port serie RS232 en Java.
Je dois donc pouvoir lire et ecrire. J'ai bien regardé les différents fichiers dispo, mais j'arrive pas à faire ce que je veux.
J'ai relié la patte TX à RX de mon port série et je veux pouvoir avec mon programme java, afficher ce que j'ai envoyé via mon programme en java.
Je suis débutant en java et j'ai du mal...
Si vous pouviez m'aider, merci!!!!

Voilà le code que j'ai déjà utilisé :
import javax.comm.*;
import java.io.*;
import java.util.*;

/*
Cette classe permet de tester les ports séries disponibles
en les listant puis en créant un stream d'entrée et de sortie
*/
public class TesteJavaComm
{
CommPortIdentifier portId;
BufferedReader in;
PrintWriter out;
SerialPort serialPort;

/*
Constructeur de la classe TesteJavaComm qui prend en paramètre le port série à utiliser.
Dans un premier temps on liste les ports disponibles sur le pc
*/
public TesteJavaComm (String com)
{
System.out.println("listage des ports série disponibles:");
listePortsDispo();
try
{
//ouverture du port série:
portId=CommPortIdentifier.getPortIdentifier(com);
serialPort=(SerialPort)portId.open("Envoi",2000);

//on sélectionne tous les paramètres de la connexion série:
serialPort.setSerialPortParams(9600,SerialPort.DATABITS_8,
SerialPort.STOPBITS_1,SerialPort.PARITY_NONE);
System.out.println("Ouverture du port "+com);

//pour lire et écrire avec des streams:
in=new BufferedReader(
new InputStreamReader(serialPort.getInputStream()));
out=new PrintWriter(serialPort.getOutputStream());

//Teste de lecture/ecriture sur le port série

String originalText="une chaine de caractere";
outputArray = originalText.getBytes( );
out.write ( outputArray, 0 , length );
int b = in.read()
in.close();
out.close();

}
catch (Exception e)
{
e.printStackTrace();
}
}//fin constructeur

public void listePortsDispo()
{
System.err.println("recherche...");
Enumeration portList=CommPortIdentifier.getPortIdentifiers();
if (portList==null)
{
System.err.println("Aucun port de communication détecté");
return;
}
while (portList.hasMoreElements())
{
portId=(CommPortIdentifier)portList.nextElement();
System.out.println("* "+portId.getName());
} // while
} //fin de la methode listePortsDispo()

/*
Methode main qui permet de tester notre classe de teste en ouvrant une connexion sur le port COM1.
*/
public static void main(String args[])
{
new TesteJavaComm ("COM1");
}//fin du main

}//fin de la classe



PS : Quand j'ai essayé ce bout de code, j'ai des erreurs comme quoi : OutputArray et length ne sont pas définis?? Il faut faire un String OutputArray et un int length?

merci encore, A++

68 réponses

Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
19 févr. 2008 à 13:07
Salut,

normale qu'il te peste dessus tu ne def pas les champs  outputArray et length...

au plus simple tu fais :
byte [] outputArray = originalText.getBytes( );
out.write ( outputArray, 0 , outputArray.length );

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
3
lionkid007 Messages postés 4 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 22 mars 2008
21 févr. 2008 à 19:48
Merci!! :)
3
lionkid Messages postés 18 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 15 mars 2011
13 mars 2008 à 16:37
Salut!

Après relecture de ton post, le out.write(outputArray,0,outputArray.length); ne fonctionne pas. Que ce soit length() ou bien length d'ailleurs...
La méthode write s'appliquant au type PrintWriter ne supporte que les :

tableau de char,
int,
string.

Pour les byte, je sais pas...
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
13 mars 2008 à 17:43
Salut,

bah ne l'utilise pas et prends autre chose.... (je n'avais pas fait gaffe au PrintWriter)
remplace le PrintWriter par un simple OutputStream

genre

OutputStream out = serialPort.getOutputStream();
byte [] b = originalText.getBytes( );
out.write ( b, 0 , b.length );

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
saadia2 Messages postés 13 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 19 avril 2010
13 juil. 2008 à 10:46
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="ProgId" content="Word.Document" />
<meta name="Generator" content="Microsoft Word 12" />
<meta name="Originator" content="Microsoft Word 12" />
<link rel="File-List" href="file:///C:%5CDOCUME%7E1%5Cskmfsoa%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml" />
<link rel="themeData" href="file:///C:%5CDOCUME%7E1%5Cskmfsoa%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx" />
<link rel="colorSchemeMapping" href="file:///C:%5CDOCUME%7E1%5Cskmfsoa%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml" />
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:HyphenationZone>21</w:HyphenationZone>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>FR</w:LidThemeOther>
<w:LidThemeAsian>X-NONE</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:DontVertAlignCellWithSp/>
<w:DontBreakConstrainedForcedTables/>
<w:DontVertAlignInTxbx/>
<w:Word11KerningPairs/>
<w:CachedColBalance/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val=-"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]-->
<!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"
DefSemiHidden="true" DefQFormat="false" DefPriority="99"
LatentStyleCount="267">
<w:LsdException Locked="false" Priority="0" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" Priority="39" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" Name="toc 9"/>
<w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" Priority="10" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" Priority="11" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" Priority="22" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" Priority="59" SemiHidden="false"
UnhideWhenUsed="false" Name="Table Grid"/>
<w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/>
</w:LatentStyles>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;
mso-font-charset:1;
mso-generic-font-family:roman;
mso-font-format:other;
mso-font-pitch:variable;
mso-font-signature:0 0 0 0 0 0;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;
mso-font-charset:0;
mso-generic-font-family:swiss;
mso-font-pitch:variable;
mso-font-signature:-1610611985 1073750139 0 0 159 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-unhide:no;
mso-style-qformat:yes;
mso-style-parent:"";
margin-top:0cm;
margin-right:0cm;
margin-bottom:10.0pt;
margin-left:0cm;
line-height:115%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-fareast-font-family:Calibri;
mso-fareast-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;
mso-fareast-language:EN-US;}
.MsoChpDefault
{mso-style-type:export-only;
mso-default-props:yes;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-fareast-font-family:Calibri;
mso-fareast-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;
mso-fareast-language:EN-US;}
.MsoPapDefault
{mso-style-type:export-only;
margin-bottom:10.0pt;
line-height:115%;}
@page Section1
{size:595.3pt 841.9pt;
margin:70.85pt 70.85pt 70.85pt 70.85pt;
mso-header-margin:35.4pt;
mso-footer-margin:35.4pt;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
</style>
<!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Tableau Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:10.0pt;
mso-para-margin-left:0cm;
line-height:115%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-fareast-font-family:"Times New Roman";
mso-fareast-theme-font:minor-fareast;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;}
</style>
<![endif]-->
Salut ;


Je suis une débutante en java ,j’ai crée des port serie
virtuel sur mon ordinateur et exécute un code semblable pour lister les port série
existant .mais le code ne les a pas détecte .est ce que le problème est que les
port son virtuel et non physique ?



 
0
lionkid Messages postés 18 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 15 mars 2011
13 juil. 2008 à 22:27
3asslama saadia2.

Pour tes ports série. Si tu en as (au moins 1), le programme Java, devrait normalement te le détecter et te l'afficher si biensûr la javaxcomm est bien installée (cela a son importance!).

Pourrais-tu nous en dire un peu plus? S'ils sont virtuels et non physique dans le sens qu'ils n'éxistent pas, alors il est tout à fait normal que le programme Java ne les détecte pas. Pour tester ce code, tu as besoin d'au moins un port.
Quelques infos de plus (erreurs etc...) ne seraient pas de refus si tu souhaites un peu plus d'aide.

Bon courage,

lionkid.
0
saadia2 Messages postés 13 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 19 avril 2010
14 juil. 2008 à 09:25
Merci j'ai finis par trouver la solution,le probleme etait lié à l'emplacement du driver win32com.dll meme avec des ports virtueles le programme arrive à les detecter
0
lionkid Messages postés 18 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 15 mars 2011
14 juil. 2008 à 10:23
Min ghir msiya Sa3dia2!

Si le programme détecte même les ports virtuels, alors c'est tant mieux! :-)
Bonne prog'!
0
bricolomi Messages postés 23 Date d'inscription dimanche 15 juin 2003 Statut Membre Dernière intervention 25 juin 2010
31 déc. 2008 à 11:17
Bonjour, étant débutant moi aussi je viens de trouver ce post
en ce qui concerne le port série j'arrive maintenant à le faire communiquer dans l'environement netbeans.
MAIS quand je veux le faire fonctionner
depuis la commande execuert de windows
en tatant pour mon projet la commande
javaw -jar "D:\NetBeansProjects\Meteo1\dist\Meteo1.jar"
je projet bloque
dans mon programme
***
ici J'ai un jLabel1 qui me dit que je suis bien arrivé à cet endroit du programme
ici la commande
Enumeration portList=CommPortIdentifier.getPortIdentifiers();
ici j'ai un jLabe2 qui n'indique rien
****
ALORS tout fonctionne dans l'environement Netbeans
ma question est-ce qu'il faut paramétrer quelque chose dans netbeans ou ailleurs
Merci pour vos réponses

dede
0
lionkid Messages postés 18 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 15 mars 2011
31 déc. 2008 à 22:02
Bonjour,

Dans votre .jar il ne faut pas oublier d'inclure les autres .jar nécessaires au fonctionnement de votre application.
Vous avez certainement dû intégrer des librairies externes à l'environnement NetBeans (sous windows).

Il faut donc en faire de même avec votre propre .jar et ne pas omettre de préciser les différentes librairies à utiliser dans le fichier MANIFEST.MF

Sincères salutations,

lionkid.
0
bricolomi Messages postés 23 Date d'inscription dimanche 15 juin 2003 Statut Membre Dernière intervention 25 juin 2010
1 janv. 2009 à 09:36
Meilleurs voeux pour 2009
Merci pour votre réponse
Je me doutais bien bien qu'il y avait un truc de ce genre mais je ne sait pas comment faire et surtout quels fichiers intégrer 
j'utilise RXTXcomm à mon avis c'est lui qui pose problème,
j'ai lu énormément de post et exemples mais tous intègrent beaucoup de classes et j'ai du mal à comprendre
en tout cas si j'arrive à faire fonctionner mon exemple j'essaierai d'en faire profiter tout le monde
(pour info je fait cela juste à titre de loisir pour faire fonctionner mes neurones)
cordiales salutation
PapyDede
0
lionkid Messages postés 18 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 15 mars 2011
1 janv. 2009 à 14:00
Bonjour,

Meilleurs voeux pour 2009 également ainsi qu'une excellente santé dans ce monde de fous! :p

Pour cette histoire de Java, c'est tout à votre honneur, vous au moins vous faites fonctionner vos neurones! ;-)
Bien, pour maintenant en revenir à nos moutons, je vous propose de faire tout cela sous Eclipse (environnement de développement bien plus pratique, simple, ludique, moins gourmand en mémoire) puisqu'il est recommandé par TOUS. Moi même j'ai eu pas mal de problèmes avec NetBeans et je suis passé à Eclipse.

Telechargez-le, lancez votre application et donnez moi l'ensemble des erreurs détectée par Eclipse. Je me ferai alors un plaisir de vous aider car là... Je ne sais pas d'où vient précisément le problème... D'autant plus que je ne pourrai pas vous dire quelles lignes de "code" ajouter au fichier manifest.mf.

Sincères salutations,

lionkid.
0
bricolomi Messages postés 23 Date d'inscription dimanche 15 juin 2003 Statut Membre Dernière intervention 25 juin 2010
1 janv. 2009 à 16:11
Merci
Je vais le télécharger pour  faire un essai
question
puis faire un copier coller de netbeans dans eclipse
je joins un petit bout de programme qui me détecte les ports disponnibles
il fonctionne sous netbeans c'est une seule classe donc cela va peut-être vous donner une idée (
PS: l'anglais et moi c'est un peut compliqué

//***
package detecrs232;


import gnu.io.CommPortIdentifier;
import java.util.Enumeration;


/**
 *
 * @author ahaile
 */
public class DetecRS232 extends javax.swing.JFrame {
    private Enumeration portList;
    private CommPortIdentifier portId;


    /** Creates new form DetecRS232 */
    public DetecRS232() {
        initComponents();
        jLabel1.setText("choix du port");
    }
   ClassPort serialP = new ClassPort();
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                         
    private void initComponents() {


        jLabel1 = new javax.swing.JLabel();
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jButton3 = new javax.swing.JButton();
        jLabel2 = new javax.swing.JLabel();
        jComboBox1 = new javax.swing.JComboBox();


        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);


        jLabel1.setText("jLabel1");


        jButton1.setText("Quitter");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });


        jButton2.setText("Init Port");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });


        jButton3.setText("Détection des Ports Com");
        jButton3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton3ActionPerformed(evt);
            }
        });


        jLabel2.setText("jLabel2");


        jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Sélection du port", "" }));
        jComboBox1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jComboBox1ActionPerformed(evt);
            }
        });


        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(layout.createSequentialGroup()
                        .addGap(56, 56, 56)
                        .addComponent(jButton3)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 38, Short.MAX_VALUE)
                        .addComponent(jButton2))
                    .addGroup(layout.createSequentialGroup()
                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel2)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel1)
                                .addGap(56, 56, 56)
                                .addComponent(jComboBox1, 0, 182, Short.MAX_VALUE)))))
                .addGap(34, 34, 34)
                .addComponent(jButton1)
                .addGap(57, 57, 57))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(36, 36, 36)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel1))
                .addGap(55, 55, 55)
                .addComponent(jLabel2)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 123, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jButton1)
                    .addComponent(jButton3)
                    .addComponent(jButton2))
                .addGap(29, 29, 29))
        );


        pack();
    }// </editor-fold>                       


    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                        
     //  serialP.initializeSerialPort();
    }                                       


    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
      System.exit(0);
    }                                       


    private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                        
        portList = CommPortIdentifier.getPortIdentifiers();
      
     while (portList.hasMoreElements())
 {
      portId = (CommPortIdentifier) portList.nextElement();
         if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL)
         {
               jComboBox1.addItem(portId.getName());
           
                if (portId.getName()!="COM2"){
                 jLabel2.setText("com2 détecté");
                }


          System.out.println("Port serie : " + portId.getName());
         }
}


    }                                       


    private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {                                          
        // TODO add your handling code here:
    }                                         


    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new DetecRS232().setVisible(true);
               // ClassPort serialP = new ClassPort();
            }
        });
    }


    // Variables declaration - do not modify                    
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JComboBox jComboBox1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    // End of variables declaration                  


}

//****

PapyDede
0
bricolomi Messages postés 23 Date d'inscription dimanche 15 juin 2003 Statut Membre Dernière intervention 25 juin 2010
3 janv. 2009 à 18:02
Bonjour,
Suivant vos conseils j'ai téléchargé eclipse ainsi que visual editor, je commence à l'utiliser il y a une chose que je ne comprend pas une interface en awt fonctionne mais en swing  quand je démarre le programme  Run AS java application cela ne donne rien à l'écran RUN AS java bean ça marche mais cela ne fonctionne pas quand j'exporte pour en faire un JAR exécutable
alors qu'avec une interface AWT ça marche
En connaissez-vous la cause
merci

PapyDede
0
lionkid Messages postés 18 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 15 mars 2011
4 janv. 2009 à 19:28
Bonsoir,

Avez-vous pensé à importer l'ensemble des librairies externes "propres" à Netbeans qui ont été utilisées pour la génération de l'interface graphique?

Sans celles-ci, vous aurez de nombreux problèmes (dont j'ai autrefois été confronté)...

Salutations,

lionkid.
0
bricolomi Messages postés 23 Date d'inscription dimanche 15 juin 2003 Statut Membre Dernière intervention 25 juin 2010
5 janv. 2009 à 09:38
Merci de votre réponse
C'est un fait  il faut importer des librairie et j'ai trouvé hier soir qu'il faut appeler une classe java bean par une classe "principale" et là j'ai réussi à faire fonctionner cela. Cela demande une rigueur a laquelle je n'était pas habitué en delphi (enfin ça m'occupe pendant cette période de chomage technique)

En tout cas mes neurones et ma connexion internet auront fonctionnés pendant cette période
Mais pour ceux qui comme moi débutent seuls dans leur coin ce n'est pas facile et si j'en ai le temps j'essaierai de faire un exemple simple (quand tout marchera bien)
cordiales salutations de la Bretagne

PapyDede
0
lionkid Messages postés 18 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 15 mars 2011
5 janv. 2009 à 14:23
Bonjour,

Personnellement, je vous recommande Eclipse. La démarche d'un bon programme en Java commence par l'utilisation d'un seul et unique environnement de développement.

1° Opter pour eclipse, plus leger et facile d'utilisation.
2° Développer votre propre interface graphique très simplement. (je peux vous aider si vous n'y arrivez pas).
3° Faire une classe pour toute l'interface graphique. Dans le main de l'interface graphique vous appelerez la classe RS232. (pensez à faire des public static ... pour plus de lisibilité).
4° Une autre classe pour la communication RS232.
5° Pensez à nommer vos boutons sur l'interface comme tout élement de celui-ci pour faciliter la compréhension et la lecture du programme. Par exemple pour un bouton en Java faites : new JButton bouton_detect_rs232 = new JButton("Detecter ports série!");

Cet exemple simple permet de déclarer, définir et donner un "label" au bouton. (du 3 en 1).
Autrement vous pouvez toujours faire les choses petit à petit comme :
New JButton bouton_detect_rs232; // Déclaration de mon bouton
bouton_detect_rs232.setLabel("Mettre le nom de mon bouton ICI"); // Label pour mon bouton.
Ensuite, il suffit de lui associer un écouteur et donc une action à effectuer via les actionListener();
pour plus d'informations sur les méthodes en java (équivalent des procédure ou fonctions en C) reportez-vous à la javadoc.
Pour les boutons c'est ici que ça se passe :

http://java.sun.com/j2se/1.4.2/docs/api/index.html

PS : J'ai lu votre code mais, il ne donne vraiment pas envie de le lire car beaucoup de choses (générées automatiquement par NetBeans sont "inutiles" ou trop lourdes...).
0
bricolomi Messages postés 23 Date d'inscription dimanche 15 juin 2003 Statut Membre Dernière intervention 25 juin 2010
5 janv. 2009 à 18:08
Merci pour votre réponse,
J'ai enfin réussi à faire fonctionner mon interface  avec eclipse et visual éditor ,
Maintenant je n'ai plus qu'à  continuer, je vais être moins assidu derrière mon PC, car mes congés forcés s'arrêtent "chomage technique chez PSA" Le boulot  demain matin 4h30 pour 2 ou 3 ans encore avant les GRANDES vacances
Merci à la communauté a
A bientôt sans doute "Sûrement"  

PapyDede
0
lionkid Messages postés 18 Date d'inscription mercredi 27 décembre 2006 Statut Membre Dernière intervention 15 mars 2011
5 janv. 2009 à 21:24
C'est noté!

Bonne continuation et à bientôt, peut-être :)

PS : Quant à moi, je cherche du travail en tant que jeune diplômé (pas facile, voir même démoralisant  )

Salutations,

lionkid.
0
yamobede Messages postés 3 Date d'inscription vendredi 13 février 2009 Statut Membre Dernière intervention 31 août 2010
31 août 2010 à 10:11
salut
voilà une explication importante pour l'utilisation des ports série en java
http://christophej.developpez.com/tutoriel/java/javacomm/

yamobeeeede
0
Rejoignez-nous