Új hozzászólás Aktív témák
-
cigam
titán
A két ciklus közé kellett ez a pár sor, és most úgy működik, ahogy szeretném.# Ha a ch1 piros, kikapcsolja a ch1 zöldetif 14 in powered_pins and 16 in powered_pins:powered_pins.remove(16)# Ha a ch2 piros, kikapcsolja a ch2 zöldetif 4 in powered_pins and 26 in powered_pins:powered_pins.remove(26)# Ha a ch3 piros, kikapcsolja a ch3 zöldetif 3 in powered_pins and 20 in powered_pins:powered_pins.remove(20)# Ha a ch4 piros, kikapcsolja a ch4 zöldetif 2 in powered_pins and 21 in powered_pins:powered_pins.remove(21)Köszönöm a segítséget, útba igazítást!
-
kovisoft
őstag
Az if-ben dupla == az egyenlőségvizsgálat.
A json konfig mintában azt látom, hogy csak deviceId-k és azon belül pinNumber-ök vannak definiálva, ezzel a konfiggal leginkább csak hardkódolni tudod. De ha kiegészítheted a konfigot, akkor felvehetsz plusz attribútumokat, amikkel megadhatod, hogy az adott device vagy az adott device adott pin-je milyen másik device milyen pin-jével nem működhet együtt. Pl. a "pinNumber" mellé felvehetsz egy "conflictingDeviceId" és egy "conflictingPinNumber" mezőt. Ide beírod, hogy mivel nem tud együtt működni. A kódban pedig gpo["conflictingPinNumber"]-ként tudsz rá hivatkozni.
-
kovisoft
őstag
Én sem vágom, hogy itt ki kinek mikor mit küld, mit hív, stb. De szerintem az első cikus végzi a device_state-ben megkapott device-ok megadott pin-jeinek a bekapcsolását. És a powered_pins-ben összegyűjti azokat a pin-eket, amiket bekapcsolt. Utána a második ciklus pedig azt csinálhatja, hogy végigmegy az összes device összes pin-jén, és azokat kikapcsolja, amiket az első ciklus nem kapcsolt be. Azaz a végére pontosan azok lesznek bekapcsolva, amiknek bekapcsolva kell lenniük, az összes többi pedig ki lesz kapcsolva.
Tehát ha jól gondolom, akkor az első ciklusba tudnál betenni valami feltételvizsgálatot, hogy ha be tudod azonosítani azt az eszközt és a pin-eket, amik a zöld és piros lámpákat jelentik, akkor a zöldet ne kapcsolja be, ha a pirosat be kellene kapcsolni.
Nem tudom, meg lehet-e oldani mondjuk, hogy a konfigban hamarabb szerepeljen a piros lámpa pin-je, mert akkor mire a zöldre kerül a ciklus, addigra már lehetne látni, hogy a pirost be kell-e kapcsolni.
Ha ez nem járható út, akkor esetleg csinálhatsz az egész elé egy harmadik ciklust, ami kb. ugyanazt csinálja, mint a mostani első ciklus, de ténylegesen nem kapcsol pin-t, csak megjegyzi egy változóban, hogy a pirosat be kellene-e kapcsolni. És ha ez a változó be van állítva, akkor a bekapcsoló ciklusban kihagyja a zöldet.
Persze ehhez tudni kellene, hogy tényleg a processTallyData az a függvény, ami a kapcsolgatást végzi. Ezt mondjuk ki tudod próbálni, ha kikommentezed benne a bekapcsolást, és attól elmúlik a lámpák bekapcsolása.
-
kovisoft
őstag
Szerintem nem a setStates függvény az, amit keresel. Ha megnézed, a setStates és a GPO_off gyakorlatilag pont ugyanazt csinálja: kikapcsolja az összes bekonfigurált pint. És a setStates csak induláskor van egyszer meghívva, miután a konfig be lett olvasva.
Nem értem, hogy pontosan hogyan működik maga a program, hogyan lehet neki utasításokat adni, de szerintem a GPIO.output hívásokat kellene végignézned, hogy melyik lehet az, amelyik neked a lámpákat vezérli, és oda lehetne betenni egy olyan feltételt, hogy a zöldet ne kapcsolja, ha egyúttal a pirosat is kellene kapcsolnia. Ez valószínűleg a processTallyData lehet, mert az on_flash ránézésre egyetlen pint villogtat.
-
-
python.org-rol telepitsd, a Store-os asszem ki van herelve.
3.10/3.11-et nyugodtan hasznalhatod, nem sok olyan csomag van, aminek regebbi verzio kellene.
3.12 meg erosen fejlesztes alatt van es a csomagok (foleg a nagyobbak) csak lassan lesznek tamogatottak az uj verziokon.fejlesztesre en a helyedben pycharm-ot hasznalnek, nem VS-t, de lehet, hogy ez csak preferencia kerdese...
Új hozzászólás Aktív témák
- Filmvilág
- Samsung kuponkunyeráló
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Azonnali alaplapos kérdések órája
- Építő/felújító topik
- Okos Otthon / Smart Home
- Ilyen olcsó sem volt még egy Apple notebook
- Horgász topik
- PROHARDVER! feedback: bugok, problémák, ötletek
- Xbox Series X|S
- További aktív témák...
- Corsair VENGEANCE RGB 32GB (2x16GB) DDR5 5600MHz CMH32GX5M2B5600C40K
- 241 - Lenovo Legion 5 (15IRX10) - Intel Core i7-13650HX, RTX 5060
- Vásárlunk iPhone 12/12 Mini/12 Pro/12 Pro Max
- SZÁLCSISZOLT FÉM HATÁSÚ Dell Latitude 5420 14" Touchscreen i5-1135G7 16GB 256GB 1 év garancia
- Azonnali készpénzes Apple Macbook Air felvásárlás személyesen / csomagküldéssel korrekt áron
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

