1. Download de 64 bits rxxx para java link: http://fizzed.com/oss/rxtx-for-java
2. Depois de descompactar o pacote baixado, siga as instruções e coloque -o no caminho da instalação do Java_Home, ou seja, Java.
3. Adicione o pom.xml do maven
<Depencency> <voundid> org.rxtx </frugiD> <ArtifactId> rxtx </artifactId> <versão> 2.1.7 </version> </dependency>
4. API serial
Commport: The Abstract Class of Port CommportIdentifier: A classe principal serialport para acesso e controle de porta serial: através dele, você pode ler, escrever e definir diretamente a porta serial.
5. Liste as portas disponíveis desta máquina
Enumeração <MonportIdentifier> Em = CommportIdentifier.getLorTentifiers (); while (em.hasMoreElements ()) {string name = em.nextElement (). getName (); System.out.println (nome); }6. Etapas gerais: Abra a porta serial para obter o objeto da porta serial ==》 Defina parâmetros ==》 Leia e escreva a porta serial ==》 Fechar a porta serial, entre os quais a leitura da porta serial é mais comumente usada
// Abra o Port CommportIdentifier de Porta Serial PortIdentifier = CommportIdentifier.GetLormentIdentifier ("com4"); // COM4 é o nome da porta serial commport = PortIdentifier.open ("com4", 2000); // 2000 é o tempo limite aberto serialport = (serialport) commport; // Defina parâmetros (incluindo taxa de transmissão, controle de fluxo de entrada/saída, contagem de bits de dados, bits de parada e verificação uniforme) serialport.SetSerialPortParams (9600, Serialport.databits_8, serialport.stopbits_1, serialport.parity_none); // Ouça serialport.addeventListener (novo ABC ()); // ABC é uma classe que implementa a interface SerialportEventListener. A operação de leitura específica é realizada nela.// Defina para acordar o tópico de recebimento de audição quando os dados chegarem serialport.NotifyOndataAVALELable (true); // Defina para acordar o encadeamento de interrupção quando a comunicação é interrompida serialport.NotifyOnBreakInterrupt (true); // in.close (); // Fechar a porta serialConteúdo ABC, ou seja, a operação específica de ler a porta serial:
public class ABC implementa serialorporeventListener {public void SerialEvent (serialportEvent arg0) {// TODO Método Auto -Generado Stub // Juiz e opere o seguinte conteúdo/* BI - Comunicação de interrupção - CD - Detecção de transportador CTS - Erro de envio de dados - Over - Over - Overpert - O que está realizado - o depósito de dados - o dispositivo de interrupção - o dispositivo de interrupção - o dispositivo de interrupção - o dispositivo de interrupção - o dispositivo de interrupção - o depósito de dados. - Erro de paridade RI - Indicação do anel */ // Alterne múltiplo, se único if (arg0.geteventType () == serialportEvent.data_available) {try {inputStream em = null; byte [] bytes = null; in = App.Serialport.getInputStream (); int bufflenth = in.Available (); while (bufflenth! = 0) {// inicialize a matriz de bytes com o comprimento dos dados nos buffers bytes = novo byte [bufflenth]; in.read (bytes); System.out.println (new string (bytes)); bufflenth = in.Available (); }} Catch (Exceção e) {// TODO BLOCO DE CAPAGEM AUTOMENTADO E.PrintStackTrace (); }}}}Operação de gravação:
OutputStream out = serialport.getOutputStream (); out.Write (Data); // byte [] dados; out.flush ();
Resumir
O exposto acima é todo o conteúdo deste artigo sobre o processo de implementação da Java serial Communication, e espero que seja útil para todos. Se você tiver alguma dúvida, deixe uma mensagem a qualquer momento e aguarde seus comentários valiosos.