簡體   English   中英

Arduino,Python,Pyserial和套接字

[英]Arduino, python, pyserial and socket

我正在嘗試在Arduino上編寫一個簡單的Web服務器來測試一些東西,但是找不到帶有以太網的Arduino。

“不用擔心”,我想,“我只是用python編寫一個套接字服務器,充當串行連接的代理”。

import socket
import serial
host = ''
port = 8001
buffSize= 1024
serverSocket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
serverSocket.bind((host, port))
serverSocket.listen(1)
ser = serial.Serial('COM3', 115200, timeout=None, dsrdtr =False,rtscts =False,xonxoff =False)
print "Listening..."
send = ""
while 1:
    conn, remoteAddr = serverSocket.accept()
    print "Connection...."
    data = conn.recv(buffSize)
    print "Recieved"
    ser.write("%s\n"%data)
    print "Sent"
    print "Attempting to get reply"
    while ser.inWaiting()>0:
            conn.send( ser.read())
    conn.close()
serverSocket.close()

但是,無論我嘗試什么,似乎瀏覽器建立的連接都是隨機重置的,並且我會得到多行數據。 每次連接或斷開串口時,腳本都會重置Arduino。 我嘗試使用RealTerm並得到了正確的答案,但是python和串行性只是一團糟。

誰能幫我?

使用PySerial文檔中的tcp_serial_redirect.py腳本。 是你所需要的全部。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM