flask gpio test

This commit is contained in:
Bernd Reuther 2021-03-03 20:35:28 +01:00
parent 98bb854612
commit 7c6e38e1c6

View File

@ -23,50 +23,50 @@ for pin in pins_in:
@kamera_server.route("/")
def main():
# For each pin, read the pin state and store it in the pins dictionary:
# For each pin, read the pin state and store it in the pins dictionary:
for pin in pins:
pins[pin]['state'] = GPIO.input(pin)
for pin in pins_in:
pins[pin]['state'] = GPIO.input(pin)
# Put the pin dictionary into the template data dictionary:
templateData = {
'pins' : pins,
'pins_in' : pins_in
}
# Pass the template data into the template main.html and return it to the user
return render_template('main.html', **templateData)
# Put the pin dictionary into the template data dictionary:
templateData = {
'pins' : pins,
'pins_in' : pins_in
}
# Pass the template data into the template main.html and return it to the user
return render_template('main.html', **templateData)
# The function below is executed when someone requests a URL with the pin number and action in it:
@kamera_server.route("/<changePin>/<action>")
def action(changePin, action):
# Convert the pin from the URL into an integer:
changePin = int(changePin)
# Get the device name for the pin being changed:
deviceName = pins[changePin]['name']
# If the action part of the URL is "on," execute the code indented below:
if action == "on":
# Set the pin high:
GPIO.output(changePin, GPIO.HIGH)
# Save the status message to be passed into the template:
message = "Turned " + deviceName + " on."
if action == "off":
GPIO.output(changePin, GPIO.LOW)
message = "Turned " + deviceName + " off."
# Convert the pin from the URL into an integer:
changePin = int(changePin)
# Get the device name for the pin being changed:
deviceName = pins[changePin]['name']
# If the action part of the URL is "on," execute the code indented below:
if action == "on":
# Set the pin high:
GPIO.output(changePin, GPIO.HIGH)
# Save the status message to be passed into the template:
message = "Turned " + deviceName + " on."
if action == "off":
GPIO.output(changePin, GPIO.LOW)
message = "Turned " + deviceName + " off."
# For each pin, read the pin state and store it in the pins dictionary:
for pin in pins:
pins[pin]['state'] = GPIO.input(pin)
# For each pin, read the pin state and store it in the pins dictionary:
for pin in pins:
pins[pin]['state'] = GPIO.input(pin)
for pin in pins_in:
pins[pin]['state'] = GPIO.input(pin)
# Along with the pin dictionary, put the message into the template data dictionary:
templateData = {
'pins' : pins,
'pins_in' : pins_in
}
# Along with the pin dictionary, put the message into the template data dictionary:
templateData = {
'pins' : pins,
'pins_in' : pins_in
}
return render_template('main.html', **templateData)
return render_template('main.html', **templateData)
if __name__ == "__main__":
kamera_server.run(host='0.0.0.0')