最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 讀取串口數(shù)據(jù),動態(tài)繪圖的示例

 更新時(shí)間:2019年07月02日 10:21:22   作者:happyliuliming  
今天小編就為大家分享一篇Python 讀取串口數(shù)據(jù),動態(tài)繪圖的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

最近工作需要把單片機(jī)讀取的傳感器電壓數(shù)據(jù)實(shí)時(shí)在PC上通過曲線顯示出來,剛好在看python, 就試著用了python 與uart端口通訊,并且通過matplotlib.pyplot 模塊實(shí)時(shí)繪制圖形出來。

1. 廢話少說,上圖

因?yàn)闆]有UI,運(yùn)行時(shí)需要在提示符下輸入串口相關(guān)參數(shù),com端口,波特率...

代碼如下:

#-*- coding: utf-8 -*-
 
# 串口測試程序
import serial
import matplotlib.pyplot as plt
import numpy as np
import time
import re
 
 
# User input comport and bundrate
comport = input('Please input comport (like COM3) for your connected device: ')
baudrate = input('Please input baudrate (like 9600) for your connected device: ')
bytes = input('Please input bytes type of uart data (1->1 byte, 2->2 bytes): ')
bytes = int(bytes)
print('You selected %s, baudrate %d, %d byte.' % (comport, int(baudrate), bytes))
 
serialport = serial.Serial(comport, int(baudrate), timeout=1, parity=serial.PARITY_EVEN, rtscts=1)
if serialport.isOpen():
	print("open success")
else:
	print("open failed")
 
plt.grid(True) # 添加網(wǎng)格
plt.ion()	# interactive mode
plt.figure(1)
plt.xlabel('times')
plt.ylabel('data')
plt.title('Diagram of UART data by Python')
t = [0]
m = [0]
i = 0
intdata = 0
data = ''
count = 0
 
while True:
	if i > 300:  # 300次數(shù)據(jù)后,清除畫布,重新開始,避免數(shù)據(jù)量過大導(dǎo)致卡頓。
		t = [0]
		m = [0]
		i = 0
		plt.cla()
	count = serialport.inWaiting()
	if count > 0 :
		if (bytes == 1):
			data = serialport.read(1)
		elif (bytes == 2):
			data = serialport.read(2)
		if data !='':
			intdata = int.from_bytes(data, byteorder='big', signed = False)
			print('%d byte data %d' % (bytes, intdata))
			i = i+1
			t.append(i)
			m.append(intdata)
			plt.plot(t, m, '-r')   
			# plt.scatter(i, intdata)
			plt.draw()
 
	plt.pause(0.002)

目前功能比較簡單,但是發(fā)現(xiàn)一個(gè)問題,但單片機(jī)送出數(shù)據(jù)速度很快時(shí), python plot 繪圖會明顯卡頓。

為解決此問題,已經(jīng)用C# 重新做了個(gè)winform UI, 使用chart控件來繪圖。

以上這篇Python 讀取串口數(shù)據(jù),動態(tài)繪圖的示例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python三元表達(dá)式的基本用法詳解

    Python三元表達(dá)式的基本用法詳解

    Python的三元表達(dá)式是一種緊湊、簡潔的條件表達(dá)式,允許在一行代碼中根據(jù)條件選擇不同的值,三元表達(dá)式通常用于需要在單行中根據(jù)條件進(jìn)行值選擇的情況,有助于提高代碼的可讀性和簡潔性,本文給大家介紹了Python三元表達(dá)式的基本用法,需要的朋友可以參考下
    2023-10-10
  • Django日志logging的配置和自定義添加方式

    Django日志logging的配置和自定義添加方式

    這篇文章主要介紹了Django日志logging的配置和自定義添加方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 一篇文章學(xué)會兩種將python打包成exe的方式

    一篇文章學(xué)會兩種將python打包成exe的方式

    最近有部分小伙伴問我,python 寫的項(xiàng)目可不可以打包成exe程序,放到?jīng)]有python環(huán)境上的電腦中執(zhí)行? 答案當(dāng)然是可以的,下面這篇文章主要給大家介紹了如何通過一篇文章學(xué)會兩種將pyton打包成exe的方式,需要的朋友可以參考下
    2021-11-11
  • python如何利用re模塊正則表達(dá)式匹配ip地址

    python如何利用re模塊正則表達(dá)式匹配ip地址

    這篇文章主要介紹了python如何利用re模塊正則表達(dá)式匹配ip地址問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 基于Python編寫一個(gè)爆炸信息窗口腳本

    基于Python編寫一個(gè)爆炸信息窗口腳本

    這篇文章主要為大家詳細(xì)介紹了如何利用Python語言編寫一個(gè)爆炸信息窗口腳本,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以嘗試一下
    2022-11-11
  • Django中prefetch_related()函數(shù)優(yōu)化實(shí)戰(zhàn)指南

    Django中prefetch_related()函數(shù)優(yōu)化實(shí)戰(zhàn)指南

    我們可以利用Django框架中select_related和prefetch_related函數(shù)對數(shù)據(jù)庫查詢優(yōu)化,這篇文章主要給大家介紹了關(guān)于Django中prefetch_related()函數(shù)優(yōu)化的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • python matplotlib中文顯示參數(shù)設(shè)置解析

    python matplotlib中文顯示參數(shù)設(shè)置解析

    這篇文章主要介紹了python matplotlib中文顯示參數(shù)設(shè)置解析,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12
  • Python中的迭代器你了解嗎

    Python中的迭代器你了解嗎

    迭代器是一種特殊的對象,它實(shí)現(xiàn)了迭代協(xié)議,允許按照一定的順序逐個(gè)訪問元素,本文就來帶大家深入了解一下Python中迭代器的使用,需要的可以參考下
    2023-05-05
  • python列表操作之extend和append的區(qū)別實(shí)例分析

    python列表操作之extend和append的區(qū)別實(shí)例分析

    這篇文章主要介紹了python列表操作之extend和append的區(qū)別,實(shí)例分析了extend方法和append方法使用上的區(qū)別,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • Python實(shí)現(xiàn)打印實(shí)心和空心菱形

    Python實(shí)現(xiàn)打印實(shí)心和空心菱形

    今天小編就為大家分享一篇Python實(shí)現(xiàn)打印實(shí)心和空心菱形,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11

最新評論

商河县| 抚宁县| 虞城县| 绥江县| 旬邑县| 广宁县| 洪湖市| 深泽县| 渝中区| 广德县| 花莲县| 阳西县| 洪洞县| 南城县| 顺义区| 佳木斯市| 通道| 沅江市| 临洮县| 平陆县| 烟台市| 图木舒克市| 石城县| 旬阳县| 辽宁省| 景德镇市| 大丰市| 鄂州市| 育儿| 库伦旗| 长乐市| 长汀县| 西充县| 泸定县| 汉源县| 桃江县| 连平县| 丹江口市| 天门市| 栾川县| 潢川县|