コードを壊してしまい、txtファイルの日付と色でLEDが点灯します。日付が正しい場合は、LEDが点灯しますが、正しい時間が経過するとLEDが消えませんが、次の日付まではまだ光っています。 なぜ、ledsがオフにならないのか、問題はどこですか?助けてください、私はほとんどすべてを試しました。コードデバッグ、なぜLEDは動作後も消灯しませんか?
import sys
import time
import datetime
import RPi.GPIO as GPIO
import SDL_DS1307
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
LED_R = 17
LED_G = 27
LED_B = 22
GPIO.setup(17, GPIO.OUT)
GPIO.setup(27, GPIO.OUT)
GPIO.setup(22, GPIO.OUT)
filename = time.strftime("%Y-%m-%d%H:%M:%SRTCTest") + ".txt"
starttime = datetime.datetime.utcnow()
ds1307 = SDL_DS1307.SDL_DS1307(1, 0x68)
ds1307.write_now()
while True:
currenttime = datetime.datetime.utcnow()
deltatime = currenttime - starttime
data=time.strftime("%Y"+"%m"+"%d"+"%H"+"%M")
with open('data.txt') as f:
for line in f:
parts=line.split()
if parts[0]<=(data)<=parts[1]:
if parts[2]=='raudona':
GPIO.putput(LED_R, False)
GPIO.putput(LED_G, True)
GPIO.putput(LED_B, True)
elif parts[2]=='zalia':
GPIO.putput(LED_R, True)
GPIO.putput(LED_G, False)
GPIO.putput(LED_B, True)
elif parts[2]=='melyna':
GPIO.putput(LED_R, True)
GPIO.putput(LED_G, True)
GPIO.putput(LED_B, False)
elif parts[2]=='geltona':
GPIO.putput(LED_R, False)
GPIO.putput(LED_G, True)
GPIO.putput(LED_B, False)
elif parts[2]=='zydra':
GPIO.putput(LED_R, True)
GPIO.putput(LED_G, False)
GPIO.putput(LED_B, False)
elif parts[2]=='violetine':
GPIO.putput(LED_R, False)
GPIO.putput(LED_G, False)
GPIO.putput(LED_B, True)
elif parts[2]=='balta':
GPIO.putput(LED_R, False)
GPIO.putput(LED_G, False)
GPIO.putput(LED_B, False)
time.sleep(10.0)
は "休憩" のように思えるが、助けどうもありがとうございました:) '他: GPIO.output(LED_R、false)を。 .. コードにaddetしましたが、ここに入れて忘れてしまったようです。:) – Vettehra
@Vettehraあなたのプロジェクトを楽しんでください。繰り返しコードがたくさんある場合は、コードを改善することができます。 – VPfB