- gban: Ingyen kellene, de tegnapra
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- Gurulunk, WAZE?!
- Magga: PLEX: multimédia az egész lakásban
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Argos: Szeretem az ecetfát
- No Voice in the Galaxy
-
LOGOUT
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
gordonfreemN
addikt
Kezd valami kialakulni.
#include "LowPower.h"
const int powerled = 9;
int brightness = 0;
int fadeAmount = 10;
const int button_p = 2;
bool buttonstate_p;
bool lastbuttonstate_p;
byte vpower;
const int powerrelay = 13;
void setup() {
pinMode(powerled, OUTPUT);
pinMode(button_p, INPUT);
buttonstate_p = 1;
lastbuttonstate_p = 1;
pinMode(powerrelay, OUTPUT);
}
void wakeUp() {
// Just a handler for the pin interrupt.
}
void loop() {
if (vpower == 0) {
analogWrite(powerled, brightness);
brightness = brightness + fadeAmount;
if (brightness <= 0 || brightness >= 250) {
fadeAmount = -fadeAmount;
}
delay(30);
if (brightness == 0) {
digitalWrite(powerled, 0);
}
}
if (vpower == 1) {analogWrite(powerled, 255);}
buttonstate_p = digitalRead(button_p); //gomb állapot kiolvasása
if (buttonstate_p != lastbuttonstate_p) //gombnyomás történt? Gomb állapota változott az előzőhöz képest?
{
delay(500); //ha történt változás az előző állapothot képest, várj 50ms-ot
if (buttonstate_p == 0) //ha a gomb nyomva, azaz bemenet értéke alacsony akkor
{
if (vpower < 1) { //ha vpower értéke kisebb mint egy
vpower++; //növelje vpower változó értékét eggyel
}
else { //ha vpower értéke egy vagy több
vpower = 0; //akkor legyen az értéke nulla
}
}
if (vpower == 0) {
digitalWrite(powerrelay, 0);
// Allow wake up pin to trigger interrupt on low.
attachInterrupt(0, wakeUp, LOW);
LowPower.powerDown(SLEEP_FOREVER, ADC_OFF, BOD_OFF);
// Disable external pin interrupt on wake up pin.
detachInterrupt(0);
// Do something here
}
if (vpower == 1) {digitalWrite(powerrelay, 1);}
}
lastbuttonstate_p = buttonstate_p;
}Na most itt egy olyan kérdésem lenne, hogy akkor a loop megáll ha sleep forever-t használok?
Csak mert a LED fade megállt.
A cél az volna, hogy a készülék kikapcsolásakor a power LED villogjon fade-elve (így jelezvén, hogy a készülék feszültség alatt áll) illetve menjen valami energiatakarék módba, mivel nincs használva a készülék.
Ez nem a teljes kód, csak egy részletet kihoztam belőle, a jelenlegi cél érdekében feleslegesnek éreztem az egészet ide vetni.
Új hozzászólás Aktív témák
Hirdetés
- Hibás! Dísznek, Porfogónak, tesztkártyának vagy böngészni! Asus Rog Strix RX 470 4GB Videokártya.
- Telefon felvásárlás!! Xiaomi Redmi Note 10, Xiaomi Redmi Note 10s, Xiaomi Redmi Note 10 Pro
- Kingmax 2x2GB DDR3 1333 RAM eladó
- ÁRGARANCIA!Épített KomPhone Ryzen 5 5600X 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- AKCIÓ! MSI B365M i5 8600 16GB DDR4 512GB SSD RX 5700XT 8GB CM MASTERBOX Q300L Zalman 600W
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged