python串口采集数据绘制波形图

这个示例使用 matplotlib 绘制图形,它能够从串口实时读取数据并绘制成波形图。确保你已经替换了 'COM11' 和 9600 为正确的串口号和波特率。

python 复制代码
import serial
import matplotlib.pyplot as plt
from collections import deque
import struct

# 配置串口参数
ser = serial.Serial('COM11', 9600)  # 将'COM1'替换为你的串口号和波特率

# 创建空的数据列表
data = deque(maxlen=100)  # 保持最新的100个数据点

# 创建一个图形窗口
plt.ion()  # 开启交互模式
fig, ax = plt.subplots()
line, = ax.plot([])
ax.set_ylim(0, 255)  # 设置y轴范围,根据你的数据范围进行调整

# 读取并绘制串口数据
try:
    while True:
        try:
            # 读取一个字节的16进制数据
            value_hex = ser.read(1)
            
            if value_hex:
                # 将16进制数据转换为整数
                value = struct.unpack('B', value_hex)[0]
                data.append(value)
                line.set_ydata(data)
                line.set_xdata(range(len(data)))
                ax.relim()
                ax.autoscale_view()
                plt.pause(0.01)  # 更新图形,可以根据需要调整刷新频率
        except ValueError:
            continue
except KeyboardInterrupt:
    pass
finally:
    ser.close()
相关推荐
2401_8796938711 小时前
数据分析与科学计算
jvm·数据库·python
明月_清风11 小时前
宿命的对决:深度对比 JavaScript 与 Python 的异步进化论
后端·python
明月_清风11 小时前
别再纠结 Conda 了!2026 年,uv 才是 Python 环境管理的唯一真神
后端·python
Thomas.Sir11 小时前
第一章:Python3 基础入门:从零基础到实战精通
python·ai
telllong11 小时前
BeeWare:Python原生移动应用开发
开发语言·python
tang7778911 小时前
小红书平台用什么代理 IP 比较好?2026年3月实测数据 + 选型推荐
网络·爬虫·python·网络协议·tcp/ip·数据挖掘·ip
海海不瞌睡(捏捏王子)11 小时前
C#知识点概要
java·开发语言·1024程序员节
aini_lovee12 小时前
C# 实现邮件发送源码(支持附件)
开发语言·javascript·c#
_MyFavorite_12 小时前
JAVA重点基础、进阶知识及易错点总结(10)Map 接口(HashMap、LinkedHashMap、TreeMap)
java·开发语言
charlie11451419112 小时前
通用GUI编程技术——Win32 原生编程实战(十六)——Visual Studio 资源编辑器使用指南
开发语言·c++·ide·学习·gui·visual studio·win32