- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Projektor topic
- RISC-V alaplap a Framework Laptop 13 notebookhoz
- Kiszivárgott információk az új AMD chipek érkezéséről
- Notebook hibák
- Megérkezett Magyarországra az LG 480 Hz-es OLED monitora
- Dell notebook topic
- AMD Navi Radeon™ RX 6xxx sorozat
- Az NVIDIA lett a világ legértékesebb vállalata
- Milyen belső merevlemezt vegyek?
Hirdetés
-
Rekordokat döntöget a Gigabyte új SSD-jének terhelhetősége
ph Az új AI TOP 100E szériás tároló 2 TB-os modellje például 219 000 TBW értékkel rendelkezik.
-
Akciófigyelő: OneSport OT05 bringát lehet nyerni
ma Két kerékpárt is sorsol a gyártó, ebből az egyik kifejezetten a Mobilarena olvasóinak szól.
-
Spyra: nagynyomású, akkus, automata vízipuska
lo Type-C port, egy töltéssel 2200 lövés, több, mint 2 kg-os súly, automata víz felszívás... Start the epic! :)
-
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
-
leventekov
csendes újonc
Sziasztok
Segitseget szeretnek kerni.egy lampat szeretnek megadott idore kapcsolni. Be es Ki
es egy gombot mikor nem villagit be lehessen kapcsolni es ugyan azzal ki./*
Akvárium vezérlés
*/
#include <Wire.h>
#include <LiquidCrystal.h>
//declare variables
float tempC;
float temp2C;
int tempPin = 1;
int temp2Pin = 2;int buttonPin = 10 ;
boolean currentState = LOW;//stroage for current button state
boolean lastState = LOW;//storage for last button state
boolean ledState = LOW;//storage for the current state of the LED (off/onint hour;
int minute;
int second;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);int co2Pin = 0; // co2 szelep
int regvilPin = 1; // reggeli villagita
int ledPin = 13; // ledszallag
int napalivilPin = 9; // napalivillagitas
int tap1Pin = 7; // tap 1 pumpa
int tap2Pin = 8; // tap 2 pumpa
int tap3Pin = 6; // tap 2 pumpavoid setup()
{lcd.begin(16, 4);
Wire.begin();
pinMode(co2Pin, OUTPUT);
digitalWrite(co2Pin, LOW);
digitalWrite(napalivilPin, LOW);
pinMode(napalivilPin,OUTPUT);
digitalWrite(regvilPin, LOW);
pinMode(regvilPin, OUTPUT);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
pinMode(tap1Pin, OUTPUT);
digitalWrite (tap1Pin, LOW);
pinMode (tap2Pin, OUTPUT);
digitalWrite (tap2Pin, LOW);
pinMode (tap3Pin, OUTPUT);
digitalWrite (tap3Pin, LOW);pinMode(buttonPin, INPUT);//this time we will set the pin as INPUT
pinMode(ledPin, OUTPUT);
Serial.begin(9600);//initialize Serial connection}
void loop()
{Wire.beginTransmission(104);
Wire.write(0x00);
Wire.endTransmission();
Wire.requestFrom(104, 7);
second = Wire.read();
minute = Wire.read();
hour = Wire.read();
hour=hour/16 * 10 + hour % 16;
minute=minute/16 * 10 + minute % 16;
second=second/16 * 10 + second % 16;lcd.setCursor(1,0);
lcd.print("Time ");
lcd.print(hour);
lcd.print(":");
if (minute < 10) { lcd.print("0"); }
lcd.print(minute);
lcd.print(":");
if (second < 10) { lcd.print("0"); }
lcd.print(second);tempC = analogRead(tempPin); //read the value from the sensor
tempC = (5.0 * tempC * 100.0)/1024.0; //convert the analog data to temperature
temp2C = analogRead(temp2Pin); //read the value from the sensor
temp2C = (5.0 * temp2C * 100.0)/1024.0; //convert the analog data to temperature// print result to lcd display
lcd.setCursor(1,1);
lcd.print("Viz");
lcd.setCursor(10, 1);
lcd.print(tempC,1);
lcd.print("'C");lcd.setCursor(1,2);
lcd.print("Szoba");
lcd.setCursor(10, 2);
lcd.print(temp2C,1);
lcd.print("'C");
lcd.setCursor(1,3);
if (hour*60+minute >= 540 && hour*60+minute <=1020 ) // CO@ adagolas kiirasa 9:00 - 17:00
{lcd.print("CO2 ADAGOLAS");}
{
lcd.print("CO2 KIKAPCSOLT");
}
if (hour*60+minute >= 1020 and hour*60+minute <= 540)
//----------------------------------------------------------------------------------
//Tápoldat 1 adagolás 7:00:00-kor 5mpif (hour*360+minute*60+second >= 2520 and hour*360+minute*60+second <= 2522)
{digitalWrite (tap1Pin, HIGH);}
else
{digitalWrite (tap1Pin, LOW);}//----------------------------------------------------------------------------------
//Tápoldat 2 adagolás 7:00:10-kor 5mpif (hour*360+minute*60+second >= 2523 and hour*360+minute*60+second <= 2525)
{digitalWrite (tap2Pin, HIGH);}
else
{digitalWrite (tap2Pin, LOW);}//----------------------------------------------------------------------------------
//Tápoldat 3 adagolás 7:00:10-kor 5mpif (hour*360+minute*60+second >= 2526 and hour*360+minute*60+second <= 2528)
{digitalWrite (tap3Pin, HIGH);}
else
{digitalWrite (tap3Pin, LOW);}//-----------------------------------------------------------------------------------
//CO2 vezerles: Be: 09:00 Ki: 17:00if (hour*60+minute >= 540 && hour*60+minute <=1020 )
{digitalWrite (co2Pin, HIGH);}
else
{digitalWrite (co2Pin, LOW);}
//................................................................................
//Reggeli villagitas : Be: 11:00 Ki : 19:00if (hour*60+minute >= 660 && hour*60+minute <= 1140)
{digitalWrite (regvilPin, HIGH);}
else
{digitalWrite (regvilPin, LOW);}//--------------------------------------------------------------------------------
// Nappali Villagitase: 14:00 Ki: 16:00
if (hour*60+minute >= 840 && hour*60+minute <= 960)
{digitalWrite (napalivilPin, HIGH);}
else
{digitalWrite (napalivilPin, LOW);}//----------------------------------------------------------------
//................................................................................
//Esteji villagitas : Be: 11:00 Ki : 19:00if (hour*60+minute >= 660 && hour*60+minute <= 1140)
{digitalWrite (regvilPin, HIGH);}
else
{digitalWrite (regvilPin, LOW);}currentState = digitalRead(buttonPin);
if (currentState == HIGH && lastState == LOW){//if button has just been pressed
Serial.println("pressed");
delay(1);//crude form of button debouncing//toggle the state of the LED
if (ledState == HIGH){
digitalWrite(ledPin, LOW);
ledState = LOW;
} else {
digitalWrite(ledPin, HIGH);
ledState = HIGH;}
}
lastState = currentState;
}//
KB igy nez ki[ Szerkesztve ]
-
leventekov
csendes újonc
Segitsegeteket szeretnem kerni.
Arduino Uno
Ds1307 Orajel
Egy vezerles ugy hogy megadott idobe kapcsolja a x labat 5 voltra es egy nomogomb lenyomasaval ugyan ezt a labat kapcsolja. Ujboli lenyoas a gomb az 5 volt megszunik.
Ha valaki tudna segitteni.[ Szerkesztve ]
-
leventekov
csendes újonc
Koszi a segitseget
-
leventekov
csendes újonc
Sajnos nagy a félreértés. Kezdo vagyok meg a dologba de probalkozok es tanulgatok. Rabukkantam erre a forumra es segitseget szerettem volna kerni . Sajnos egybol csak a roszra gondolnak eggyesek. Meg nem tudok programot irni ezert megoldasokbol rakok ossze dolgokat. Az volt a kerdesem hogy hogyan lehet nem hogy ki csinálja meg nekem. Az idozites mukodik csak a gomb nem akar osszejonni.
De remelem hogy megoldom. Nem adom fel. Köszönöm a megértéseteket -
leventekov
csendes újonc
Sajnos a fekete vezet. Kave automatakkal foglalkozok amugy es ott egy olvasonak csinaltam egy vezerlest egy panelra es ragasztos megoldast hasznaltam . Egy ido utan vezetett es osszeget irt fel.
-
leventekov
csendes újonc
Koszonom hogy segitt valaki. Nem gondoltam volna hogy ez lessz belőle.
A lenyeg az hogy akvarium vezerlesen(villagitason) dolgozok es idore kapcsol nehany T5 neon csovet. Es ugy akarom a megoldani hogy nyomógomb segítségével lehessen be es ki kapcsolni a neonokat. Beraktam nyomogombot a programba de nem mukodott nekem. Ezert irtam ide? -
leventekov
csendes újonc
Egy kep a munkarol
-
leventekov
csendes újonc
A feher nem vezet. Mert utanna azt hasznaltam es ok
-
leventekov
csendes újonc
tehat ha ki van kapcsolva az ora miatt es en be szeretnem kapcsolni akkor egy gomb megnyomasaval tudjam ezt.
Negy idozites
es ide kellene betegyem a 4 gombot.if (hour*60+minute >= 420 && hour*60+minute <=1140) //1080
{digitalWrite (khideg,HIGH);}
else
{digitalWrite (khideg,LOW);}//----------------------------------------------------------------------------------
//------------ Be 10:00 22:00 ki
if (hour*60+minute >= 600 && hour*60+minute <=1320) //1320
{digitalWrite (kmeleg,HIGH);}
else
{digitalWrite (kmeleg,LOW);}//-----------------------------------------------------------------------------------
//------------- Be: 12:00 Ki: 17:00
if (hour*60+minute >=720 && hour*60+minute <=1080 ) //1020
{digitalWrite (nmeleg, HIGH);}
else
{digitalWrite (nmeleg, LOW);}//--------------------------------------------------------------------------------
//------------- Be: 8:00 Ki: 17:00
if (hour*60+minute >= 480 && hour*60+minute <=1020) //960
{digitalWrite (nhideg, HIGH);}
else
{digitalWrite (nhideg, LOW);} -
leventekov
csendes újonc
ezt ha beirom akor se mukodik mert meg van allitva az ido miatt.
buttonState = digitalRead(buttonPin);
// a gomb megnyomásának elleörzése
// ha a buttonState állapota magas (benyomva a gomb)
if (buttonState == LOW) {
// akkor a led kimenete bekapcsolva
digitalWrite(ledPin, LOW);
}
else {
// különben a led kimenete kikapcsolva
digitalWrite(ledPin, HIGH); -
leventekov
csendes újonc
Igen igy szeretnem.
Megprobalom hogy mukszik e.
Koszonom a segitseget[ Szerkesztve ]
-
leventekov
csendes újonc
igy ki be kapcsolja de nem veszi figyelembe az idozitest.
itt a kod
nem tudom mi a gond benne
#include <Wire.h>
#include <LiquidCrystal.h>
//declare variables
float tempC;
float temp2C;
int tempPin = A0;
int temp2Pin = A1;int hour;
int minute;
int second;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);int kmeleg = 6; // 24w neoncso T5
int khideg = 8; // 24w neoncso T5
int nmeleg = 10; // 54w neoncso T5
int nhideg = 13; // 54w neoncso T5const byte kapcsolok = 1;
const int prell = 1000;
const byte pushbutton[kapcsolok] = { 9};
const byte led[kapcsolok] = {6};
boolean toggle[kapcsolok];
boolean button[kapcsolok];
boolean ledstate[kapcsolok];
unsigned long prelltime[kapcsolok];void setup()
{
for (byte i = 0; i < kapcsolok; i++)
{
pinMode(pushbutton, INPUT_PULLUP);
pinMode(led(i), OUTPUT);
digitalWrite(led(i), HIGH);
}
lcd.begin(16, 4);
Wire.begin();
pinMode(kmeleg, OUTPUT);
digitalWrite(kmeleg, HIGH);
pinMode(khideg, OUTPUT);
digitalWrite (khideg,HIGH);
pinMode(nmeleg, OUTPUT);
digitalWrite(nmeleg, HIGH);
pinMode(nhideg, OUTPUT);
digitalWrite (nhideg, HIGH);}
void loop()
{Wire.beginTransmission(104);
Wire.write(0x00);
Wire.endTransmission();
Wire.requestFrom(104, 7);
second = Wire.read();
minute = Wire.read();
hour = Wire.read();
hour=hour/16 * 10 + hour % 16;
minute=minute/16 * 10 + minute % 16;
second=second/16 * 10 + second % 16;lcd.setCursor(1,0);
lcd.print("Time ");
lcd.print(hour);
lcd.print(":");
if (minute < 10) { lcd.print("0"); }
lcd.print(minute);
lcd.print(":");
if (second < 10) { lcd.print("0"); }
lcd.print(second);tempC = analogRead(tempPin); //read the value from the sensor
tempC = (5.0 * tempC * 100.0)/1024.0; //convert the analog data to temperature
temp2C = analogRead(temp2Pin); //read the value from the sensor
temp2C = (5.0 * temp2C * 100.0)/1024.0; //convert the analog data to temperature// print result to lcd display
lcd.setCursor(1,1);
lcd.print("Viz");
lcd.setCursor(10, 1);
lcd.print(tempC,1);
lcd.print("'C");lcd.setCursor(1,3);
lcd.print("Szoba");
lcd.setCursor(10, 3);
lcd.print(temp2C,1);
lcd.print("'C");
//----------------------------------------------------------------------------------
//------------- Be 7:00 18:00 Ki
if (hour*60+minute >= 420 && hour*60+minute <=1140) //1080
{digitalWrite (khideg,HIGH);}
else
{digitalWrite (khideg,LOW);}
//----------------------------------------------------------------------------------
//------------ Be 10:00 22:00 ki
if (hour*60+minute >= 600 && hour*60+minute <=1320) //1320
{digitalWrite (kmeleg,HIGH);}
else
{digitalWrite (kmeleg,LOW);}
//-----------------------------------------------------------------------------------
//------------- Be: 12:00 Ki: 17:00
if (hour*60+minute >=720 && hour*60+minute <=1080 ) //1020
{digitalWrite (nmeleg, HIGH);}
else
{digitalWrite (nmeleg, LOW);}
//--------------------------------------------------------------------------------
//------------- Be: 8:00 Ki: 17:00
if (hour*60+minute >= 480 && hour*60+minute <=1020) //960
{digitalWrite (nhideg, HIGH);}
else
{digitalWrite (nhideg, LOW);}
for (byte i = 0; i < kapcsolok; i++)
{
button(i) = digitalRead(pushbutton(i));
if ((button(i) == HIGH) && (toggle(i)))
{
toggle(i) = false;
ledstate(i) = !ledstate(i);
prelltime(i) = millis() + prell;
}
digitalWrite(led(i), ledstate(i));
if ((button(i) == LOW) && (!toggle(i)) && (millis() > prelltime(i)))
{
toggle(i) = true;
}
}
}[ Szerkesztve ]
-
leventekov
csendes újonc
Kicsit magass nekem ugy latom. De nem is olyan egyszeru a dolog. Mit is kerhetnek ezutan.
Mar meg se merek szollani nehogy az legyen mi azelott. Maradok a keresgeles melett mert erre nem sokra mentem.
Koszonom a segitseget. -
leventekov
csendes újonc
A programrol itt egy [link]
-
leventekov
csendes újonc
1. Ha idozites miatt bekapcsolva van ki lehessen kapcsolni gombrol es vissza. Ha lekapcsolva van az idozites miatt fel lehessen kapcsolni es le, de az idozites programozasa maradjon meg.
ez azert kel mert ha veletlenul fel szeretnem kapcsolni mikor az idozito miatt ki van kapcsolva , vagy forditva.
Új hozzászólás Aktív témák
- Acer Nitro 5 - AN515 - 15,6"FHD IPS 144Hz - i7-10750H - 16GB - 1TB SSD - RTX 3050 Ti - Win11 - Gari
- Eladó Acer c24 számítógép 1 év gari
- HP Laptop 17-by2024nf - 17,3"HD+ - i3-10110U - 8GB - 128GB SSD - 1TB HDD - Win11 PRO
- Macbook PRO 16 M1 PRO CHIP! 16GB/1TB (1024GB) SSD! Magyar! Gyönyörű! Akku 97%! Fulldoboz!
- Corsair iCUE 5000X RGB Tempered Glass Black (CC-9011212-WW) - Számla+Garancia, Ár alatt! BeszámítOK!