Python多线程接收串口数据实现方案

Oliver
Oliver
发布时间:2026-10-13 | 3人浏览过
原创

本文介绍如何使用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利用线程接收串口数据的示例内容到此结束,希望能为读者提供有价值的参考。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表