-
GAMEPOD.hu
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
}[ Szerkesztve ]
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
Új hozzászólás Aktív témák
- HP EliteDesk 800 G1 TWR I5/4590/8 GB ram/500 GB HDD/
- Eladó Xbox Series S 512Gb Joy Nélkül
- i5-6600k / Geforce GTX1070 Ti / 16 GB DDR4 ram Gamer PC eladó samsung odyssey g3 monitorral stb..
- Corsair K100 Air Wireless Gamer Billentyűzet /// Új, sosem használt // Számla + Garancia
- Delock USB 2.0 kábel A-típusú - Type-C csatlakozó (2M)
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen