python 串口读取+存储+输出处理实例

yipeiwu_com5年前Python基础

研究了一晚上的成果。

	import serial
	import win32com.client
	import matplotlib.pyplot as plt
	import numpy as np
	ser = serial.Serial("COM6", 115200, bytesize = 8,timeout=0.5) # 打开串口
	print("我要开始了:")
	res=[]
	while (1):
	  ch = ser.readline(1)
	  result = ''
	  hLen = len(ch)
	  for i in range(hLen):
	    hvol = ch[i]
	    hhex = '%02x' % hvol
	    result += hhex + ' '
	  sz=[]
	  res.append(result)
	
	  if len(res)==100:
	    j=0
	    for i in range(len(res)-1):
	      # 十六进制转十进制
	      if "fc" in res[i]:
	        print(i)
	        sz.append(int(res[i + 1], 16)*256+int(res[i],16))
	        #print(sz)
	      else:
	        continue
	
	    print("asd")
	    print(type(sz[1]))
	
	    speaker = win32com.client.Dispatch("SAPI.SpVoice")
	    speaker.Speak("请保持均匀呼吸")
	    x = []
	    for i in range(0, len(sz)):
	      x.append(i)
	    plt.plot(x, sz)
	    plt.show()
	    print(res)
	    break
	

以上这篇python 串口读取+存储+输出处理实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

基于python的多进程共享变量正确打开方式

多进程共享变量和获得结果 由于工程需求,要使用多线程来跑一个程序。但是因为听说python的多线程是假的,于是使用多进程,反正任务需要共享的参数少。 查阅资料,发现实现多进程主要使用Mu...

详解python--模拟轮盘抽奖游戏

详解python--模拟轮盘抽奖游戏

题目: 轮盘分为三部分: 一等奖, 二等奖和三等奖; 轮盘转的时候是随机的, 如果范围在[0,0.08)之间,代表一等奖, 如果范围在[0.08,0.3)之间,代表2等奖, 如果范围在[...

Python通过for循环理解迭代器和生成器实例详解

本文实例讲述了Python通过for循环理解迭代器和生成器。分享给大家供大家参考,具体如下: 迭代器 可迭代对象 通过 for…in… 循环依次拿到数据进行使用的过程称为遍历,也叫迭代...

python 合并文件的具体实例

支持两种用法:(1)合并某一文件夹下的所有文件(忽略文件夹等非文件条目)(2)显示的合并多文件。复制代码 代码如下:import sysimport os'''  &...

Django中ORM表的创建和增删改查方法示例

Django中ORM表的创建和增删改查方法示例

前言 Django作为重量级的Python web框架,在做项目时肯定少不了与数据库打交道,编程人员对数据库的语法简单的还行,但过多的数据库语句不是编程人员的重点对象。因此用ORM来操作...