Hirdetés
- Androidos tablet topic
- Milyen billentyűzetet vegyek?
- SSD kibeszélő
- Sony MILC fényképezőgépcsalád
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Soundbar, soundplate, hangprojektor
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- AMD Navi Radeon™ RX 9xxx sorozat
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- Új szintre emeli a csalók elleni védelmet a Battlefield 6
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
PROHARDVER!
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
- Amazfit GTR Mini okosóra / Számla / Garancia /
- Apple iPhone 14 Pro Max / 256GB / Gyári független / 12Hó Garancia / 87% akku
- Bomba ár! HP EliteBook 845 G9 - Ryzen 5 6650U I 16GB I 512SSD I 14,1" Touch I Cam I W11 I NBD Gari!
- Samsung Galaxy A04s 32GB Kártyafüggetlen 1Év Garanciával
- Bomba ár! Microsoft Surface Laptop - i5-7G I 8GB I 256GB SSD I 13,5" Touch I Cam I W10 I Garancia!
Állásajánlatok
Cég: FOTC
Város: Budapest