繁体   English   中英

使用python从arduino读取数据

[英]reading data from arduino with python

我正在尝试做arduino经常发送一堆数据的事情,而我的目标是:

  1. 每100个数据,创建一个新文件。 (我们称它为a1,a2,...)

  2. 在一个通用文件中,取每个文件的平均值,并将其写在该文件中作为新行

为了进行实验,我将arduino编码为:

void setup(){
Serial.begin(9600);
}

void loop(){
Serial.println(random(100,500)); 
delay(20);
}

这是python代码:

import serial, struct

initialfreq = 0
a = 0
interval = 0

fileName = 'general_list'
general_list = open(fileName, 'wb')

ser = serial.Serial(port = 'COM3', baudrate = 9600)


def mean(numberList):
    return sum(numberList) / len(numberList)



while(1):
  for i in '100' :
      temparray=[]
      fileName = 'interval' + str(initialfreq) + '.data'
      temp_file = open(fileName, 'wb')
      readoff = ser.readline()
      temparray.append(readoff)
      temp_file.write(readoff)


##        temp_file.flush()
print("bitti")
general_list.write(str(interval)+"    "+str(mean(temparray)))
general_list.write(str(mean(temparray)))
initialfreq= initialfreq + 1
a=0`

我的问题是

  1. for循环无法正常工作,即使当我伤心100时,它也无法使用100个值。

  2. arduino使用\\ n发送代码。 我在文件中看不到它们,但是在temparray中我看到有\\ n,所以它没有计算平均值。

非常感谢。

这是您第一个问题的解决方案。

1)

for i in range(100):

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM