Advertisement
JoshuaStrutt

DSR/ETX-ACK Protokoll Sender

Nov 10th, 2016
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.06 KB | None | 0 0
  1. import serialio.Serial;
  2. import support.Console;
  3.  
  4. public class SendeBuchstabeJoshuaX {
  5.  
  6.   // Sendererseite (muss zuerst gestartet werden)
  7.   public static void main(String[] args) {
  8.     //Der String der gesendet werden soll, er wird jedes mal vom User neu eingetippt und hier zwischen
  9.     //gespeichert
  10.     String zuSenden;
  11.     //Das Objekt welches den geöffneten Port der seriellen Schnittstelle darstellt
  12.     Serial comm;
  13.     try {
  14.       //Ein neue Serielleschnittstelle wird initialisiert
  15.       //auf Port "COM1", einer Baudrate von 9600, es werden 8 Bits für die Datenübertragung verwendet,
  16.       //1 Bit um das Ende einer Nachricht darzustellen und es wird keine Parität verwendet
  17.       comm = new Serial("COM1", 9600,
  18.       Serial.DATABITS_8,                                                      
  19.       Serial.STOPBITS_1,
  20.       Serial.PARITY_NONE);
  21.      
  22.       //Wenn die Schnittstelle erfolgreich geöffnet wurde
  23.       if (comm.open()) {
  24.         System.out.println("Sender gestartet!");
  25.        
  26.           //Auf DSR warten
  27.           while (comm.isDSR() == false) { }
  28.          
  29.           System.out.println("DSR = TRUE");
  30.          
  31.           //Auf ACK warten
  32.           if (comm.read() == 0x06) {
  33.             System.out.println("Erstes ACK erkannt");
  34.             comm.write("Die ist eine Nachricht"+String.valueOf(0x03));  
  35.           }
  36.          
  37.           if (comm.read() == 0x06) {
  38.             System.out.println("Zweites ACK erkannt");
  39.           }
  40.          
  41.           if (comm.isDSR() == false) {
  42.              System.out.println("Ende");
  43.           }    
  44.          
  45.           comm.close();          
  46.          
  47.         } // end of if
  48.        
  49.       }
  50.      
  51.     }
  52.     else {
  53.       //Der Port konnte nicht geöffnet werden
  54.       System.out.println("Fehler beim Oeffnen von COM1");
  55.     }
  56.     System.out.println("Enter-Taste druecken.");
  57.     Console.readln();
  58.   } catch (Exception e) {
  59.     //Der Port konnte nicht geöffnet werden, der Fehler wird ausgegeben
  60.     System.err.println("Fehler: " + e.getMessage());
  61.   }
  62. }
  63.  
  64.  
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement