处理pyserial串行对象的模块连接和断开

watchedserial的Python项目详细描述


build-statusLatest version released on PyPi

安装

$ pip install watchedserial

说明

WatchedReaderThread是pyserial的一个子类 serial.threaded.ReaderThread。类似于ReaderThreadWatchedReaderThread在自己的线程中实现串行端口读取循环,但是 它不是在串行断开连接时终止线程,而是调用回调和 等待端口再次可用,然后再尝试重新连接。打开 重新连接它调用重新连接回调。这将使编写应用程序需要 更无缝地处理不可靠的串行连接,使其更易于编写 允许用户安全断开和重新连接串行设备的应用程序。

用法

子类watchedserial.WatchedReaderThread实现 handle_reconnect()handle_disconnect()回调。这两个 功能应该是非阻塞的(类似于ISR)。

importtimeimportserialfromwatchedserialimportWatchedReaderThreadPORT="COM3"classMyPacket(serial.threaded.FramedPacket):defhandle_packet(self,packet):print(packet)classMyWatchedReaderThread(WatchedReaderThread):defhandle_reconnect(self):print("Reconnected")defhandle_disconnect(self,error):print("Disconnected")ser=serial.Serial(PORT,baudrate=115200)withMyWatchedReaderThread(ser,MyPacket)asprotocol:whileTrue:time.sleep(1)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在数据库中存储工作日数据以及开始时间和结束时间?   mysql Java JPA内部联接查询不起作用   java MQ消息在不同的客户端应用程序中显示不同   javascript如何在xPage上提高typeAhead性能?   java在尝试保存EditText时无法暂停   mongodb“未能使用带参数的构造函数NO_构造函数实例化java.util.List”,   java如何修改使IllegalArgumentException:列“\u id”不存在的游标   转换Android。网Uri到Java。伊奥。输入流   java NetBeans RCP居中弹出窗口无法按预期工作   java将sql开发人员与netbeans连接起来   带有xmldsig签名的java JAXB编组   java ORACLE JDBC批处理执行不会返回受影响行的实际计数   java无法理解如何在由swagger自动生成的jaxrs服务器中访问请求头   java如何处理漏洞CVE20181258,同时将Spring安全版本5与外部客户端(最新版本)一起使用?   JavaSpring数据JPA存储库多租户单模式技术