CoderTools

Online Serielle-Schnittstellen-Debugger

Browser-basiertes serielles Debugging-Tool - kein Download erforderlich, Echtzeit-Überwachung über Web Serial API

Verbindung

Status: Getrennt

Datenmonitor

Daten senden

Intervall (ms):

Statistiken

0
Gesendete Bytes
0
Empfangene Bytes
00:00:00
Verbindungszeit
0
Datenrate (B/s)

Dokumentation zum Seriellen Debugger

So verwenden Sie dieses Tool

  1. Verbinden Sie Ihr serielles Gerät mit dem Computer
  2. Konfigurieren Sie die Verbindungsparameter (Baudrate, Datenbits, Parität, Stoppbits)
  3. Klicken Sie auf "Verbinden", um die serielle Verbindung herzustellen
  4. Überwachen Sie empfangene Daten in Echtzeit
  5. Senden Sie Daten im Text- oder HEX-Format
  6. Verwenden Sie den Sendeverlauf, um vorherige Befehle zu wiederholen
  7. Zeigen Sie Verbindungsstatistiken und Datenrate an

Verbindungsparameter

Baudrate
Datenübertragungsgeschwindigkeit (Bits pro Sekunde)
Datenbits
Anzahl der Bits pro Datenrahmen (5-8)
Parität
Fehlererkennungsmethode (Keine, Gerade, Ungerade)
Stoppbits
Rahmenende-Indikatoren (1 oder 2)

Implementierungsprinzipien

Dieses Tool wird mithilfe der Web Serial API implementiert, einer modernen Browser-Schnittstelle, die es Webanwendungen ermöglicht, direkt mit seriellen Geräten zu kommunizieren. Im Folgenden sind die Kernimplementierungsdetails aufgeführt:

Kern-API: Web Serial API

Das Tool basiert auf der Web Serial API, die JavaScript-Schnittstellen für den Zugriff auf serielle Ports über den Browser bereitstellt.

Hauptfunktionen:

  • Nativer Browser-Zugriff auf serielle Ports ohne Installation von Treibern oder Plugins
  • Unterstützt mehrere serielle Port-Konfigurationen (Baudrate, Datenbits, Parität, Stoppbits, Flusskontrolle)
  • Bidirektionale Datenkommunikation mit Readable/Writable Streams
  • Asynchrone Operationen basierend auf Promises und async/await

Implementierungsschritte

1. Zugriff auf seriellen Port anfordern
const port = await navigator.serial.requestPort();

Verwenden Sie navigator.serial.requestPort(), um den Benutzer aufzufordern, ein serielles Port-Gerät auszuwählen. Dies erfordert Benutzerinteraktion zur Gewährleistung der Sicherheit.

2. Port konfigurieren und öffnen
await port.open({
  baudRate: 9600,
  dataBits: 8,
  parity: 'none',
  stopBits: 1,
  flowControl: 'none'
});

Rufen Sie die Methode port.open() mit Konfigurationsparametern auf, einschließlich Baudrate, Datenbits, Parität, Stoppbits und Flusskontrolle.

3. Daten lesen
const reader = port.readable.getReader();
while (true) {
  const { value, done } = await reader.read();
  if (done) break;
  // Empfangene Daten verarbeiten (Uint8Array)
  const text = new TextDecoder().decode(value);
}

Holen Sie sich einen reader von port.readable und verwenden Sie eine asynchrone Schleife, um kontinuierlich Daten zu lesen. Empfangene Daten liegen im Uint8Array-Format vor und müssen mit TextDecoder dekodiert werden.

4. Daten senden
const writer = port.writable.getWriter();
const encoder = new TextEncoder();
const data = encoder.encode('Hello Serial!');
await writer.write(data);

Holen Sie sich einen writer von port.writable, verwenden Sie TextEncoder, um Zeichenfolgen in Uint8Array zu konvertieren, und rufen Sie dann writer.write() auf, um Daten zu senden.

5. Verbindung schließen
await reader.cancel();
await reader.releaseLock();
await writer.releaseLock();
await port.close();

Bevor Sie schließen, geben Sie die Sperren von reader und writer frei und rufen Sie dann port.close() auf, um die serielle Port-Verbindung zu schließen.

Verwendete Schlüssel-APIs

  • navigator.serial.requestPort() - Benutzer auffordern, einen seriellen Port auszuwählen
  • port.open(options) - Seriellen Port mit Konfiguration öffnen
  • port.readable.getReader() - Reader des Lesestreams abrufen
  • port.writable.getWriter() - Writer des Schreibstreams abrufen
  • reader.read() - Daten vom seriellen Port lesen
  • writer.write(data) - Daten an seriellen Port schreiben
  • TextDecoder / TextEncoder - Zwischen Zeichenfolgen und Byte-Arrays konvertieren
  • port.addEventListener('disconnect') - Auf Gerätetrennungsereignisse hören

Hauptfunktionen

Web Serial API

Direkter Browser-Zugriff auf serielle Schnittstellen ohne zusätzliche Software

Echtzeit-Überwachung

Live-Datenüberwachung mit Zeitstempel- und Auto-Scroll-Unterstützung

HEX-Modus

Senden und Empfangen von Daten im Hexadezimalformat mit Validierung

Sendeverlauf

Verfolgen und Wiedergeben zuvor gesendeter Befehle

Statistiken

Überwachung von Datenübertragungsraten und Verbindungszeit

Mehrsprachig

Unterstützung für Chinesisch, Englisch, Japanisch, Französisch und Spanisch

Häufige Anwendungsfälle

Entwicklung & Debugging

  • Arduino- und ESP32-Entwicklung
  • Debugging eingebetteter Systeme
  • Firmware-Entwicklung und -Tests
  • IoT-Gerätekonfiguration

Testen & Kommunikation

  • AT-Befehls-Tests für Modems
  • Sensordatenüberwachung
  • Protokollanalyse und Debugging
  • Industrielle Gerätekommunikation

Browser-Unterstützung & Anforderungen

Unterstützte Browser

  • Chrome 89+
  • Edge 89+
  • Firefox (nicht unterstützt)
  • Safari (nicht unterstützt)

Anforderungen

  • Chromium-basierter Browser mit Web Serial API-Unterstützung
  • HTTPS-Verbindung (erforderlich für Web Serial API)
  • Benutzerberechtigung für den Zugriff auf serielle Schnittstellen
  • Kompatible serielle Gerätetreiber installiert

Verwandte Standards und Spezifikationen

RS-232: RS-232: Klassischer serieller Kommunikationsstandard, der elektrische Eigenschaften und Steckerspezifikationen definiert
UART: UART: Universal Asynchronous Receiver-Transmitter, das Kernprotokoll für serielle Kommunikation
USB-to-Serial: USB-zu-Seriell: Gängige serielle Konvertierungsmethode in modernen Geräten

Weitere Informationen: Wikipedia RS-232, UART-Protokollstandards-Dokumentation

Schnellmenü

Keine aktuellen Tools