SerialTool 是一个非常优秀的串口和网络连接助手,使用Qt编写,可以显示数据波形,还可以跨平台使用,项目地址
快速链接
注:Linux版本建议使用 SerialTool-linux64-1.2.3
C语言的用法作者已经写的很详细了,这里我主要说一下如何在microPython环境下使用SerialTool来显示波形
import sendwave
from machine import UART
import urandom
uart = UART(2, baudrate=115200, rx=13,tx=12,timeout=10)
osc = sendwave.SendWave()
import urandom
value = [urandom.randint(20, 2000) for x in range(16)]
data = osc.ws_point(value[1]) #点模式,单条数据发送
data = osc.ws_point(*value) #点模式,发送一个长度小于等于16的任意列表
data = osc.ws_sync(*value) #同步模式,发送一个长度小于等于16的任意列表
uart.write(data) #发送数据
uart.close()
import network
import socket
import sendwave
import urandom
wlan=network.WLAN(network.STA_IF)
osc = sendwave.SendWave()
listenSocket = socket.socket() #创建套接字
import urandom
value = [urandom.randint(20, 2000) for x in range(16)]
port = 10000 #端口号
ip = wlan.ifconfig()[0] #获取IP地址
listenSocket.bind((ip, port)) #绑定地址和端口号
listenSocket.listen(1) #监听套接字
listenSocket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) #设置套接字
conn, addr = listenSocket.accept() #接收连接请求,返回收发数据的套接字对象和客户端地址
data = osc.ws_point(value[1]) #点模式,单条数据发送
data = osc.ws_point(*value) #点模式,发送一个长度小于等于16的任意列表
data = osc.ws_sync(*value) #同步模式,发送一个长度小于等于16的任意列表
ret = conn.send(data) #发送数据
listenSocket.close()