【发布时间】:2014-05-30 19:23:47
【问题描述】:
我正在尝试连接 arduino 和 nodejs 应用程序。我有一个从串口读取数据的 python 脚本。
import socket
import serial
if __name__ == "__main__":
while True:
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(('127.0.0.1', 8080))
serial_read = serial.Serial('/dev/ttyACM0', 115200)
signal = serial_read.readline()
if "B" in signal:
s = signal.split("B")
client.sendall(s[1])
并发送到本地主机。我的服务器端:
var app = require('http').createServer(handler).listen(8080),
io = require('socket.io').listen(app),
fs = require('fs');
io.sockets.on('connection', function(socket){
});
function handler (req, res) {
fs.readFile(__dirname + '/index.html',
function (err, data) {
if (err) {
res.writeHead(500);
return res.end('Error loading index.html');
}
res.writeHead(200,{ 'Content-type': 'text/html'});
res.end(data);
setInterval(function(){
io.sockets.emit('pulse', {'pulse': data});
}, 1000);
});
}
客户:
<script>
var socket = io.connect();
socket.on('pulse', function(data){
$('#pulse').text(data.pulse);
});
</script>
<div id="pulse"></div> <br>
我的问题是我无法在页面上正确显示数据。我的代码有什么问题吗?
【问题讨论】:
标签: node.js sockets socket.io arduino real-time