获取串口数据的平均值

时间:2016-07-19 16:56:36

标签: python serial-port

我有一个python代码,通过RS232读取串行数据

import serial
import time

ser = serial.Serial('/dev/ttyUSB0', 2400, timeout=1)

while True:
str1 = ser.read(1)
if str1 == '':
    print 'no data on line'
else:
    print str1 

这会让我回头

no data on line
no data on line
no data on line
no data on line
206
210
212
200

它是麦克风读数值 让我们假设这些数字是移动电机的度数 我想获得avarage数字来将电机移动到它。

1 个答案:

答案 0 :(得分:0)

import serial
import time
data_sum = []
ser = serial.Serial('/dev/ttyUSB0', 2400, timeout=1)

while True:
    str1 = ser.read(1)
    if str1 == '':
        print 'no data on line'
    else:
        data_sum.append(int(str1)

ave = sum(data_sum)/len(data_sum)