使用Flask进行线程化以监视串行数据

时间:2015-01-22 11:29:55

标签: python multithreading flask raspberry-pi

我在Raspberry Pi上使用flask的帮助实现了一个Web服务器,到目前为止我能够获得日期,时间和时间。串行数据工作。

我想创建线程,其中连续监视串行数据并对接收的数据执行数学运算,并将数据传输到烧瓶应用程序

目前的计划如下

from flask import Flask, render_template

import datetime
import serial
import threading

area1_light=0
area1_temp=0

area2_light=0
area2_temp=0

serial_rxdata='L1234T029'
ser=serial.Serial('/dev/ttyUSB0',9600)


app = Flask(__name__)

@app.route("/")
def WSN():

    global area1_light
    global area1_temp

    global area2_light
    global area2_temp

    global serial_rxdata


    serial_rxdata=[]
    serial_rxdata=ser.readline()

    area1_light=serial_rxdata[1:5]
    area1_temp=serial_rxdata[7:10]
    now=datetime.datetime.now()
    timeString = now.strftime("%Y-%m-%d %H:%M:%S")
    templateData = {
        'title' : 'webdata!',
        'time' : timeString,
        'a1light' :area1_light,
        'a1temp': area1_temp,
        }
    return render_template('web.html', **templateData)

if __name__ == "__main__":
    app.run(host='0.0.0.0', port=80, debug=True)

在此过程中,网站无法加载,直到收到数据为止, 并且串行数据通信将与其他设备连续, 我该怎么做? 我无法使用线程执行此程序。

0 个答案:

没有答案