Hirdetés
- Bemutatkoztak a be quiet! Light Base 500 szériás, kábeleket rejtő házai
- A Chieftec néhány terméke fehér köntöst öltött
- Sokkal drágább lett az „olcsó” Tesla, mint várták
- Egy fontos tényező akadályozhatja a csúcstechnológiás chipgyártást az USA-ban?
- Visszatért a mítosz, a legenda, a világ leghasznosabb terméke!
- Visszatért a mítosz, a legenda, a világ leghasznosabb terméke!
- OLED TV topic
- Milyen TV-t vegyek?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- HP notebook topic
- Androidos tablet topic
- Milyen joysticket vegyek?
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- 5.1, 7.1 és gamer fejhallgatók
- Amlogic S905, S912 processzoros készülékek
Hirdetés
(használd a CYBSEC25PH kuponkódot további 20 ezer ft kedvezményért!)
-
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
-
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
- Lenovo ThinkPad L15 Gen 1 i5 / 16GB RAM / 256GB SSD / FHD IPS / 4G modem
- Lenovo ThinkPad E15 Gen 3 Ryzen 5 / 16GB RAM / 256GB SSD / FHD IPS / 1GB dedikált VGA
- Lenovo ThinkPad X1 Yoga Gen 3 i7 / 16GB / 512GB SSD / 2 az 1-ben érintőkijelző / WQHD IPS
- Lenovo ThinkPad T14s i7 / 32 GB RAM / 256 GB SSD / Full HD IPS
- HP EliteBook 650 G9 12. generációs i5 / 16GB RAM / 256GB SSD / FHD
- AKCIÓ! Apple Mac Studio M2 ULTRA 2023 64GB 1TB SSD számítógép garanciával, hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32GB RAM RTX 3050 6GB GAMER PC termékbeszámítással
- Apple Watch series 4 GPS / 1 Hó Garancia / 85% akku
- Samsung Galaxy Z Flip 5 512GB, Kártyafüggetlen, 1 Év Garanciával
- LG L192WS monitor eladó: 19" 1440 900
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest