Hirdetés
- Xiaomi 14 Ultra - Leica hercegnő
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- iPhone topik
- Ez lehet az Apple hajlítható telefonjának formája, mérete
- Apple Watch
- Itthon is elérhető a OnePlus 11 és a Buds Pro 2
- Samsung Galaxy Watch5 Pro - kerek, de nem tekerek
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Xiaomi 15T - reakció nélkül nincs egyensúly
-
Mobilarena
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
- sziku69: Fűzzük össze a szavakat :)
- One otthoni szolgáltatások (TV, internet, telefon)
- Debrecen és környéke adok-veszek-beszélgetek
- Okos Otthon / Smart Home
- Diablo IV
- Pánik a memóriapiacon
- Autós topik
- World of Tanks - MMO
- Xiaomi 14 Ultra - Leica hercegnő
- Luck Dragon: Asszociációs játék. :)
- További aktív témák...
- magyar billentyűzet - 151 - Lenovo LOQ (15IAX9) - Intel Core i5-12450HX, RTX 4060
- GYÖNYÖRŰ iPhone 13 Mini 128GB Pink-1 ÉV GARANCIA -Kártyafüggetlen, MS3823, 100% Akkumulátor
- Telefon felvásárlás!! iPhone 16/iPhone 16 Plus/iPhone 16 Pro/iPhone 16 Pro Max
- Lenovo Thinkpad X13 Gen1 Ryzen5 4650U Refurbished - Garancia
- iPad Smart Keyboard
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
ekkold

