python 通过 serial 模块实现简单的串口交互

python 通过 serial 模块实现简单的串口交互

    • 前言
    • 前期准备
    • 导入所需模块
    • 创建一个装饰器
    • 创建一个信息打印函数
    • 创建一个串口日志捕获函数
    • 创建一个串口输入函数
    • 主函数实现
    • 主函数调用
    • 完整代码实现
    • 运行代码,开始交互

前言

在使用 python 工作的过程中,有时候不可避免的需要与串口进行交互。比如,自动的向串口发送某些特定的指令。再比如,自动从串口返回值中获取某些有用的信息。
这里做个笔记,便于后续需要时作参考。

前期准备

安装好 serial 模块:

pip install pyserial

导入所需模块

import serial
import threading
from functools import wraps
from datetime import datetime

创建一个装饰器

这个装饰器的作用是给捕获或者外发的数据信息添加一个时间戳

def timestamp_decorator(func):
    @wraps(func)
    def wrapper(*args, **kwargs):
    	# 时间戳的输出格式为:[2022-06-12 13:52:43.806]  
        print(f'[{
     str(datetime.now())[:-3]}]  ', end='')
        func(*args, **kwargs)

    return wrapper

创建一个信息打印函数

此函数的作用是将用户的输入或者串口捕获到的输出作打印。
同时,调用前面创建的装饰器,为当前的打印添加一个时间戳,以便于工作中 debug 某个时间段的串口日志信息

@timestamp_decorator
def print_line(line

你可能感兴趣的:(python,笔记,python,开发语言)