Python多线程接收串口数据实现方案
本文介绍如何使用Python的serial和thread模块实现串口数据的实时接收。通过封装MSerialPort类,利用多线程机制在后台持续读取串口数据,主线程负责定时打印接收到的信息,适用于嵌入式设备通信等场景。
Python多线程串口数据接收实现
具体实现代码如下所示:
#!/usr/bin/env python
import serial
import time
import thread
class MSerialPort:
message=''
def __init__(self,port,buand):
self.port=serial.Serial(port,buand)
if not self.port.isOpen():
self.port.open()
def port_open(self):
if not self.port.isOpen():
self.port.open()
def port_close(self):
self.port.close()
def send_data(self,data):
number=self.port.write(data)
return number
def read_data(self):
while True:
data=self.port.readline()
self.message+=data
if __name__=='__main__':
mSerial=MSerialPort('/dev/ttyACM0',9600)
thread.start_new_thread(mSerial.read_data,())
while True:
time.sleep(1)
print mSerial.message
print 'next line'
以上关于Python利用线程接收串口数据的示例内容到此结束,希望能为读者提供有价值的参考。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













