refactored

This commit is contained in:
Sergey Yarkov 2022-09-21 20:15:22 +03:00
parent 1f631cecd0
commit 24660ad531
2 changed files with 11 additions and 6 deletions

View File

@ -11,7 +11,11 @@ class Application {
return;
}
this.serialPortHandler = new SerialPortHandler({ baudRate: 9600 });
this.serialPortHandler = new SerialPortHandler(
{ baudRate: 9600 },
() => console.log('Device connected.'),
() => console.log('Device disconnected.')
);
/**
* DOM Elements
@ -80,9 +84,8 @@ class Application {
this.$serialLog.innerHTML += data + '\n';
await this.serialPortHandler.write(data + '\n');
const message = await this.serialPortHandler.read();
this.$serialLog.textContent += message;
this.$serialLog.textContent += '\n';
console.log(message);
this.$serialLog.textContent += message.replaceAll(EOT, '');
console.log('Message received: \n' + message);
}
this.$serialLog.scrollTo(0, this.$serialLog.scrollHeight);
}
@ -130,13 +133,14 @@ class SerialPortHandler {
async read() {
const reader = this.port.readable.getReader();
let chunks = '';
while (true) {
const { value, done } = await reader.read();
const decoded = this.decoder.decode(value);
chunks += decoded;
if (done || decoded.includes('\u0004')) {
if (done || decoded.includes(EOT)) {
console.log('Reading done.');
reader.releaseLock();
break;
@ -148,7 +152,7 @@ class SerialPortHandler {
#setupListeners() {
navigator.serial.addEventListener('connect', this.onConnect);
navigator.serial.addEventListener('disconnect', this.onDisconnected);
navigator.serial.addEventListener('disconnect', this.onDisconnect);
}
}

View File

@ -49,6 +49,7 @@ textarea {
textarea {
resize: vertical;
min-height: 200px;
line-height: 1.4;
font-size: 16px;
outline: none;
font-size: 12px;