My_Repo/servo_motor/index.js
2023-05-25 20:35:08 +03:00

50 lines
1.3 KiB
JavaScript

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 = {};
let obj;
const parser = port.pipe(new ReadlineParser({ delimeter: '\r\n' }));
parser.on('data', (data) => {
if (str != data) {
console.log(data);
}
str = data;
try {
obj = JSON.parse(data);
} catch (Exception) {
console.log(Exception);
}
});
const server = http.createServer((req, res) => {
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(obj?.firstElement.toString());
} else if (req.url == '/potonciometer') {
res.writeHead(200, {'Content-Type': 'application/json'});
res.end(obj?.potenciometer.toString());
}
});
server.listen(2048);