Kezdőoldal » Számítástechnika » Programozás » Raspberry pi relé vezérlő...

Raspberry pi relé vezérlő programban hogy tudnám elérni hogy az alábbi kód végtelenszer ismétlődjön?

Figyelt kérdés
Ha a Try után beírom hogy while Tru akkor a relék bekapcsolva maradnak és csak a szövegkiírás ismétlődik.

2016. jan. 16. 11:36
 1/5 A kérdező kommentje:

import RPi.GPIO as GPIO

import time

GPIO.setmode(GPIO.BCM)

pinList = [2, 3, 4, 17]

for i in pinList:

GPIO.setup(i, GPIO.OUT)

GPIO.output(i, GPIO.HIGH)


SleepTimeL = 2

try:

GPIO.output(2, GPIO.LOW)

print "ONE"

time.sleep(SleepTimeL);

GPIO.output(3, GPIO.LOW)

print "TWO"

time.sleep(SleepTimeL);

GPIO.output(4, GPIO.LOW)

print "THREE"

time.sleep(SleepTimeL);

GPIO.output(17, GPIO.LOW)

print "FOUR"

print "Good bye!"


except KeyboardInterrupt:

print " Quit"

GPIO.cleanup()

2016. jan. 16. 11:40
 2/5 anonim ***** válasza:
Csak egyszerűen változtasd meg a GPIO-k logikai jelszintjét LOW-ról HIGH-ra. (nem értem, miért van így elgányolva a nyák, hogy a bekapcsolva az alacsony jelszint lett)
2016. jan. 16. 12:09
Hasznos számodra ez a válasz?
 3/5 A kérdező kommentje:
Sajnos nem hozott eredményt,így az történik hogy be sem kapcsolnak a relék csak a szöveg ismétlődik.
2016. jan. 16. 13:04
 4/5 anonim ***** válasza:

Számomra nem teljesen tiszta hogy mit akarsz mert nem fejtetted ki, de a program azt csinálja hogy magas szintből 2 másodpercenként alacsony szintbe kapcsolja a kimeneteket sorban. #2-es válaszoló nem úgy értette hogy cseréld le a LOW-okat HIGH-ra, hanem hogy miután lefutottak a LOW-ok, kapcsold vissza őket HIGH-ra. Hogy ezt 2 másodpercenként teszed e meg vagy egyszerre az összeset mint a program elején, rajtad múlik. Gondolom valami ilyesmi kellhet neked:



SleepTimeL = 2


try:

. . # Végtelenségig ismétlődjön vagy Ctrl+C megszakításig

. . while True:

. . . . # Reléket bekapcsoljuk 2 másodpercenként sorban

. . . . GPIO.output(2, GPIO.LOW)

. . . . print "ONE"

. . . . time.sleep(SleepTimeL);

. . . . GPIO.output(3, GPIO.LOW)

. . . . print "TWO"

. . . . time.sleep(SleepTimeL);

. . . . GPIO.output(4, GPIO.LOW)

. . . . print "THREE"

. . . . time.sleep(SleepTimeL);

. . . . GPIO.output(17, GPIO.LOW)

. . . . print "FOUR"

. . . . time.sleep(SleepTimeL);

. . . .

. . . . # Most ugyan úgy kikapcsoljuk a reléket 2 másodpercenként

. . . . GPIO.output(2, GPIO.HIGH)

. . . . print "ONE"

. . . . time.sleep(SleepTimeL);

. . . . GPIO.output(3, GPIO.HIGH)

. . . . print "TWO"

. . . . time.sleep(SleepTimeL);

. . . . GPIO.output(4, GPIO.HIGH)

. . . . print "THREE"

. . . . time.sleep(SleepTimeL);

. . . . GPIO.output(17, GPIO.HIGH)

. . . . print "FOUR"

. . . . time.sleep(SleepTimeL);


except KeyboardInterrupt:

print " Quit"

GPIO.cleanup()



Ha nem 2 másodpercenként akarod akkor pedig ugyan úgy kell ahogy a program elején beállítottad:


for i in pinList:

. . GPIO.output(i, GPIO.HIGH)

2016. jan. 16. 18:42
Hasznos számodra ez a válasz?
 5/5 A kérdező kommentje:
Most meg sikerült vmit rendesen elálítanom a PI-n, mert mostmár az első program se fut le csak a szöveg megy . Az is csak ha belépek root felhasználóként, egyébként kiírja hibának az első sort : import RPi.GPIO as GPIO, pedig pont a GPIO-at szerettem volna telepíteni :-(
2016. jan. 20. 21:46

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!