-
Fototrend
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
-
Pubszon
veterán
A túlcsordulás megelőzése érdekében csináltam, hogy ha több mint 30 napja megy és a legközelebbi szabad pillanatába lereseteli önmagát. A belső 32bites számláló majdnem 50 napig képes számlálni, emiatt 19 nap alatt csak lesz egy szabad pillanat.
Ezt így oldottam meg:// Reset 30 nap futas utan
if ((vegallasZarva == LOW) && (digitalRead(lampaPin) == HIGH) && (day > 29))
{
digitalWrite(ResetPin, LOW);
}Tehát hogy ha be van zárva a kapu és a lámpa sincs felkapcsolva, illetve több mint 29 napja fut (azaz legalább 30), akkor a reset pint LOW-ra teszi. A reset és a D12 közvetlen össze van kötve, a setupba pedig a D12 HIGH-ra van állítva.
Mivel majd holnap rakom össze a hardvert (a kapunyitóét), emiatt ezt nem tudtam kipróbálni, hanem most ezzel gyakorlok meg vele együtt a soros kommunikációt is.
int led = 13;//pin 13 as OUTPUT LED pin
int resetPin = 12;
int ledState = digitalRead(led);
unsigned long sec;
// the setup routine runs once when you press reset:
void setup() {
digitalWrite(resetPin, HIGH);
digitalWrite(led, LOW);
delay(200);
// initialize the digital pin as an output.
pinMode(led, OUTPUT);
pinMode(resetPin, OUTPUT);
Serial.begin(115200);//initialize Serial Port
Serial.println("");
Serial.println("Start");//print reset to know the program has been reset and
//the setup function happened
delay(500);
}
// the loop routine runs over and over again forever:
void loop() {
sec = millis() / 1000; // Masodperc
Serial.println("LOOP Start");
digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
ledState = digitalRead(led);
Serial.print("LED Statusz: ");
Serial.println(ledState);
sec = millis() / 1000; // Masodperc
Serial.print(sec);
Serial.println(" masodperc telt el indulas ota...");
delay(1000); // wait for a second
digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)
Serial.print("LED Statusz: ");
ledState = digitalRead(led);
Serial.println(ledState);
sec = millis() / 1000; // Masodperc
Serial.print(sec);
Serial.println(" masodperc telt el indulas ota...");
delay(1000); // wait for a second
if (sec>20)
{
Serial.println("Reset most...");
delay(10);
digitalWrite(resetPin, LOW);
Serial.println("HIBA! Reset nem mukodik...");
}
//this never happens because Arduino resets
}
Új hozzászólás Aktív témák
- Szeged és környéke adok-veszek-beszélgetek
- RETRO beárazás (mobil, PC, konzol)
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Okos Otthon / Smart Home
- Nem növel telepméretet a Galaxy S26 Ultra
- PlayStation 5
- Energiaital topic
- Kertészet, mezőgazdaság topik
- További aktív témák...
- Azonnali készpénzes Intel i3 i5 i7 i9 8xxx 9xxx processzor felvásárlás személyesen / csomagküldés
- Csere-Beszámítás! RGB Számítógép PC játékra! R5 5600X / RTX 3060Ti 8GB / 32GB DDR4 / 500GB SSD
- AKCIÓ! MSI Z690 i7 12700K 32GB DDR4 1TB SSD RX 6800 16GB Phanteks P600S Cooler Master 750W
- LG 27UL550-W - 27" IPS / 3840x2160 4K / 60Hz 5ms / HDR10 / AMD FreeSync
- Eredeti Windows 10 / 11 Pro aktiválókulcs AZONNALI SZÁLLÍTÁSSAL!
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest