Acquisition port serie com 1
Kerozen77
Messages postés
12
Statut
Membre
-
Kerozen77 Messages postés 12 Statut Membre -
Kerozen77 Messages postés 12 Statut Membre -
Bonjours,
Je suis actuellement en stage et mon responsable me demande de réaliser un programme ou de trouver un logiciel permettant d'afficher de façon lisible les information reçut par le port com 1. Ces informations était destiné à une imprimante Epson Lx-300+ qui les imprimaient au fil de l'eau, mais je voudrait à présent les stoker dans un ficher.txt .
Merci d'avance
Je suis actuellement en stage et mon responsable me demande de réaliser un programme ou de trouver un logiciel permettant d'afficher de façon lisible les information reçut par le port com 1. Ces informations était destiné à une imprimante Epson Lx-300+ qui les imprimaient au fil de l'eau, mais je voudrait à présent les stoker dans un ficher.txt .
Merci d'avance
A voir également:
- Acquisition port serie com 1
- Waptrik com - Télécharger - Divers TV & Vidéo
- Hotmail. com ou .fr - Forum Hotmail / Outlook.com
- Singemp3.com - Forum Téléchargement
- Port ping ✓ - Forum Réseaux sociaux
- Yahoo.fr ou .com ✓ - Forum Yahoo mail
2 réponses
Voici le code que j'ai récupéré:
Et l'erreur produite:
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 Lire{
CommPortIdentifier portId;
BufferedReader in;
PrintWriter out;
SerialPort serialPort;
/*
Constructeur de la classe test qui prend en paramètre le port série à utiliser.
Dans un premier temps on liste les ports disponibles sur le pc
*/
public Lire (String com)
{
System.out.println("liste 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(1200,SerialPort.DATABITS_8,
SerialPort.STOPBITS_1,
SerialPort.PARITY_NONE);
System.out.println("Ouverture du port "+com);
// pour lire avec des streams:
in=new BufferedReader(new InputStreamReader(serialPort.getInputStream()));
// Teste de lecture sur le port série
String codeBarre = new String();
try {
//lecture du buffer et affichage
codeBarre = (String) in.readLine();
System.out.println(codeBarre);
} catch (IOException e) {
}
in.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());
} //fin while
} //fin de la methode listePortsDispo()
/*Methode main qui permet de tester notre classe de tester en ouvrant une connexion sur le port COM1.
*/
public static void main(String args[])
{
new Lire ("COM1" );
}//fin du main
}//fin de la classe
Et l'erreur produite:
javax.comm.PortInUseException: Port currently owned by comrs232 at javax.comm.CommPortIdentifier.open(CommPortIdentifier.java:337) at Lire.<init>(Lire.java:25) at Lire.main(Lire.java:71)
Avec le logiciel d'acquisition Serial Port Monitor j'obtient ceci:
Terminal view:
Line view:
Terminal view:
€.€€ø€.ø€€ø€.€.€.€x.ø€€xüxü€øx<.øxü€ø€xÀ.€.xüx<.ø€€xüxÀ€øxü€øx<.ø.x<ÿ€€xüx<.ø.€xü.€x.xü.ø€xüx<ðøø.ø.øø€xÀ.€ø€xüxÀøø€ø.øø€x.xüøøx<ðø.€.€.€.ø€øxÀx.€.€øxÀx.€ø€€.€x.€.€€ø€.ø€€ø€.€.€.€x.ø€€xüxü€øx<.øxü€øx<.ø€€ø.x<ÿ.€€øxüø€ø€€øx<.øø€xü.€€€€.ø€xüxÀ€€€.ø€.€.€ø.€xü.€x..€.€xü.€øxüø€ø€€øx<.øø€xü.€€€€.ø€xüxÀ€€€.ø€.€.€ø.€.€.€.ø€øxÀx.€.€øxÀx.€ø€€.€x.€.€€ø€.ø€€ø€.€.€.€x.ø€€xüxü€øx<.øxü€øx<.ø€€ø.x<ÿ.€x<.ø.øøxÀøø.øø€xÀ.€.€.€.€.€.€.€.€.€.€.€xü.€x.............................................................................................................................................................................................................
Line view:
[18/04/2013 10:47:00]
4023 IRP_MJ_DEVICE_CONTROL - Request operates a serial port
STATUS_SUCCESS
IOCTL_SERIAL_GET_COMMSTATUS - Request returns information about the communication status of a COM port
Errors - 3
HoldReasons - 0
AmountInInQueue - 13
AmountInOutQueue - 0
EofReceived - 0
WaitForImmediate - 0
----------------------------------------------------------------------------------
[18/04/2013 10:47:00]
4025 IRP_MJ_READ - Transfers data from a COM port to a client
STATUS_SUCCESS
00 f8 80 78 fc 78 c0 80 80 80 00 f8 80 .ø€xüxÀ€€€.ø€