python tcp通信客户端接收数据并绘图

python tcp通信客户端接收数据并绘图

结果预览

在这里插入图片描述
在网上搜了很多资料,要么是串口通信,要么是c++或java的。找了几个程序,拼拼凑凑出来的。(比较小白)白嫖了csdn这么久,我也来贡献一下吧~

程序解释:
每次获取1024字节数据,每四个字节转换成一个32bit数据,并little模式反序转换成10进制,之后绘图。

# -*- coding: utf-8 -*-

from socket import *
import matplotlib.pyplot as plt

BUFSIZE=1024
IPADDR='192.168.0.10'
PORT=8080
client=socket(AF_INET,SOCK_STREAM)
client.connect((IPADDR,PORT))

t = [0]
m = [0]
i = 0
data = ''
while True:

    for x in range(10):
        client.send(b'hello')
        data = client.recv(BUFSIZE)
        for bytes4 in [data[i:i + 4] for i in range(0, len(data), 4)]:
            dataint = int.from_bytes(bytes4, byteorder='little', signed=True)
            i = i + 1
            t.append(i)
            m.append(dataint)

        plt.grid(True)  # 添加网格
        plt.ion()  # interactive mode
        plt.figure(1)
        plt.xlabel('time')
        plt.ylabel('data')
        plt.title('recv data')
        plt.plot(t, m, '-r')
        plt.draw()

    plt.pause(0.002)

版权声明:本文为weixin_45013404原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。