222/index.js

60 lines
1.4 KiB
JavaScript

// const { SerialPort } = require('serialport')
// // Create a port
// const port = new SerialPort({
// path: '/com16/tty-usbserial1',
// baudRate: 9600,
// })
// port.on('readable', function () {
// console.log('Data:', port.read())
// })
// // Switches the port into "flowing mode"
// port.on('data', function (data) {
// console.log('Data:', data.toString('UTF8'))
// })
const fs = require('fs');
const http = require('node:http');
const { SerialPort } = require('serialport')
const { ReadlineParser } = require('@serialport/parser-readline')
const port = new SerialPort({ path: '/com9', baudRate: 9600 })
var str = "";
const parser = port.pipe(new ReadlineParser({ delimiter: '\r\n' }))
parser.on('data', (data) => {
if (str != data) {
console.log(data);
}
str = data;
})
// Create a local server to receive data from
const server = http.createServer((req, res) => {
console.log(req.url);
if(req.url=='/'){
fs.readFile('index.html', (err,data) => {
if(err){
res.writeHead(404, "Not Found");
res.write("No file found")
res.end();
} else {
res.writeHead(200, {
'Content-Type': 'text/html'
})
res.write(data)
res.end();
}
})
} else if(req.url=='/pin'){
res.writeHead(200, {'Content-Type': 'application/json'});
res.end(str);
} else{
res.writeHead(404, "Not Found");
res.end();
}
});
server.listen(2048);