-
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
-
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
- PS5 konzolod megvásároljuk: Budapest, Kecskemét, Szeged, Debrecen vagy akár GLS futárt küldünk!
- MikroTik CCR1009-7G-1C-1S+ Cloud Router
- BESZÁMÍTÁS! 4TB Toshiba P300 SATA HDD meghajtó garanciával hibátlan működéssel
- ÁRGARANCIA! Épített KomPhone i5 10600KF 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- Bomba ár! Lenovo ThinkPad X390: i5-G8 I 16GB I 256GB SSD I 13,3" FHD Touch I Cam I W11 I Gari!
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest