python 实现串口指令通讯

上一篇文章文章写了串口数据的读取,这篇文章讲串口数据的写入(指令控制)

与下位机通信往往需要十六进制形式进行数据通信,根据设备串口通信指令文档进行指令通信,本篇以灯光控制为例:

1.pyserial模块封装了对串口的访问,安装:pip insatll pyserial

2.实例

复制代码
import serial
import time

if __name__ == '__main__':
    #指令含义
    addr_light = [0xFF, 0x09, 0x00, 0x11, 0x00] 
    green_always_on = [0x12, 0x7C, 0x25]  # 绿灯常量
    light_off = [0x61, 0x3D, 0xC0]  # 警灯关闭

    try:
        #串口连接
        light_ser = serial.Serial(port='COM9', baudrate=9600, timeout=0.5)
        if light_ser.isOpen():  # 判断端口是否被打开
            print('lighting {0} is connect'.format(light_ser.name))

            #发送绿灯指令
            light_ser.write(addr_light + green_always_on)
            #读取返回数据 
            data = light_ser.readline() 
            print(data.hex().upper())   #二进制转十六进制,大写
            time.sleep(5)
            #发送关闭指令
            light_ser.write(addr_light + light_off)
            
        else:
            print("can not connect serial")

        # 关闭串口
        serial.Serial.close(light_ser)

    except Exception:
        print("error")

欢迎留言

相关推荐
Scott9999HH4 小时前
【IIoT流量实战】蒸汽管道阀门全关却仍有流量?用 Python 实现涡街信号 FFT 频谱分析与温压全补偿积算网关,深度拆解靠谱的涡街流量计厂家硬核技术标准
开发语言·python
AI云海5 小时前
python 列表、元组、集合和字典
开发语言·python
二十雨辰6 小时前
[爬虫]-Urllib
爬虫·python
玉鸯7 小时前
Agent Hook:在概率推理之上,为 Agent 叠加确定性控制
python·langchain·agent
weixin_446260858 小时前
HACO:面向动态部署环境的对冲式智能计算可靠多智能体调度框架
后端·python·flask
我的xiaodoujiao8 小时前
API 接口自动化测试详细图文教程学习系列32--Allure测试报告2
python·学习·测试工具·pytest
qetfw8 小时前
MXU:Tauri 2 + React 的 MaaFramework 跨平台 GUI 源码
前端·python·react.js·前端框架·开源项目·效率工具
用户8356290780519 小时前
Python 实现 Excel 页面布局与打印设置自动化
后端·python
一次旅行9 小时前
Python+大模型端到端自动化日报系统
开发语言·python·自动化