- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- bigyo108: A vén PC-Főnix újjászületése
- Meggyi001: RTX 5060 - Az új népkártya?
- btz: Internet fejlesztés országosan!
- eBay-es kütyük kis pénzért
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
- bambano: Bambanő háza tája
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
LOGOUT
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
-
Saua
tag
Sziasztok,
Egy másodpercenként szeretném kiolvasni a hőmérsékletet és ha a hőmérséklet nagyobb vagy kisebb mint a beállított érték akkor egyszer fusson le a blink függvény. Tehat mindig csak egyszer fusson le mikor a beállított érték alá csökken és mindig csak egyszer mikor az érték fölé emelkedik.
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 7 // Hőmérő a pin7-en
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
int led1 = 6;
int ledState = LOW; // kimeneti pin aktuális állapota
int ledBLINK = 8;
char engedely = HIGH;
unsigned long lastTemp;
float temperature;
void setup()
{
pinMode(led1, OUTPUT);
digitalWrite(led1, ledState);
pinMode(ledBLINK, OUTPUT);
Serial.begin(9600);
sensors.begin();
sensors.setResolution(11);
}
void loop()
{
engedely = engedely; // blink5 hivás engedelyezese
if (millis() > lastTemp + 1000 ){
sensors.requestTemperatures();
temperature = sensors.getTempCByIndex(0);
Serial.println(temperature);
if (temperature < (24-0.5 ))
{
ledState = HIGH;
if((ledState == HIGH) && (engedely == HIGH)) blink5();
}
else if (temperature > (24+0.5 ))
{
ledState = LOW;
if((ledState == LOW) && (engedely == HIGH)) blink5();
}
lastTemp = millis();
}
digitalWrite(led1, ledState);
}
void blink5()
{
for(int i=0;i<5;i++){
digitalWrite(ledBLINK,HIGH);
delay(500);
digitalWrite(ledBLINK,LOW);
delay(500);
}
engedely = LOW; // további meghívás tiltása
}A hőmérséklet mérés az jó, határértékek elérésekor a led1 müködik…de a blink függvény nem akar működni. Hol rontottam el ?
Új hozzászólás Aktív témák
- Azonnali készpénzes Microsoft XBOX Series S és Series X felvásárlás személyesen/csomagküldéssel
- HP ZBook 15 G6 i7-9850H 16GB RAM 512GB SSD NVIDIA Quadro T2000 15.6 FHD 1 év garancia
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- BESZÁMÍTÁS! ASUS Z390 i7 9700 32GB DDR4 240GB SSD 1TB HDD RTX 2070 Super 8GB NZXT H510 ADATA 600W
- Tablet felvásárlás! Samsung Galaxy Tab S10+, Samsung Galaxy Tab S10 Ultra, Samsung Galaxy Tab S10 FE
Állásajánlatok
Cég: FOTC
Város: Budapest