Online Serielle-Schnittstellen-Debugger
Browser-basiertes serielles Debugging-Tool - kein Download erforderlich, Echtzeit-Überwachung über Web Serial API
Verbindung
Datenmonitor
Daten senden
Sendeverlauf
Statistiken
Dokumentation zum Seriellen Debugger
So verwenden Sie dieses Tool
- Verbinden Sie Ihr serielles Gerät mit dem Computer
- Konfigurieren Sie die Verbindungsparameter (Baudrate, Datenbits, Parität, Stoppbits)
- Klicken Sie auf "Verbinden", um die serielle Verbindung herzustellen
- Überwachen Sie empfangene Daten in Echtzeit
- Senden Sie Daten im Text- oder HEX-Format
- Verwenden Sie den Sendeverlauf, um vorherige Befehle zu wiederholen
- Zeigen Sie Verbindungsstatistiken und Datenrate an
Verbindungsparameter
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
Offizielle Dokumentationsreferenz
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
Weitere Informationen: Wikipedia RS-232, UART-Protokollstandards-Dokumentation
Verwandte Tools
CRC-Rechner
Berechnen Sie CRC-8, CRC-16, CRC-32, CRC-64 Prüfsummen mit Unterstützung für Modbus, CCITT und andere Protokollstandards
Zahlenbasis-Konverter
Konvertieren zwischen binären, oktalen, dezimalen und hexadezimalen Zahlensystemen mit Unterstützung für benutzerdefinierte Basen (2-36)
Zeitstempel-Konverter
Konvertierung zwischen Unix-Zeitstempeln und menschenlesbaren Datum/Zeit-Formaten
Text-Toolkit
Umfassendes Text-Manipulations-Toolkit mit Wortzähler, Datenextraktion, Teilen/Zusammenführen, Zeilenfilter, Präfix-/Suffix-Operationen
Zeichensatz-Konverter
Konvertieren Sie Zeichenkodierung zwischen UTF-8, GBK, Big5, Shift_JIS, ISO-8859, Windows-Codepages mit automatischer Erkennung
Regex-Tester
Testen und debuggen Sie reguläre Ausdrücke mit sofortigen Übereinstimmungsergebnissen