Temp Controller

Başlatan veliusta, 12 Temmuz 2014, 23:58:34

veliusta



Öğrenmek amaçlı Sıcaklık kontrolü yapmak istiyorum. Yapamadığım kısım butonlarla ısı kontrolünü ayarlama.

Buna benzer CCS-C veya Arduino Örnek kodları lazım.

Kabil ATICI

Tam sayı yapsan bile yeterli. Bildiğimiz butonla ileri/geri sayıcı. Bunu internette bulabilirsin.

Hatta menü ve tamam butonlarına bile gerek yok. İleri sayıcı + butonu, geri sayıcı - butonu. Ayar set değerini buton yardımı ile  butona bastıkça ileri/geri sayacak bir kod.
ambar7

veliusta

#2
Tamam hocam sağol basitmiş, yapıyorum.

mesaj birleştirme:: 13 Temmuz 2014, 15:00:29

   
int BUTONA = 7;
int BUTONB = 6;
int BUTONC= 9;
int BUTOND= 8;
int MOTOR= 13;

int DEGERA = 0; 
int DEGERB = 0; 
int MEVCUTDURUMA = 0;
int MEVCUTDURUMB = 0;
int ONCEKIDURUMA = 0;
int ONCEKIDURUMB = 0;

float SET = 30.0;

DEGERA = digitalRead(BUTONA);

if(DEGERA == HIGH){ 
MEVCUTDURUMA = 1;
}
else {
MEVCUTDURUMA = 0;
}
if(MEVCUTDURUMA != ONCEKIDURUMA){
if(MEVCUTDURUMA == 1){
SET = SET + 0.2;
}
}

DEGERB = digitalRead(BUTONB);
if(DEGERB == HIGH){ 
MEVCUTDURUMB = 1;
}
else {
MEVCUTDURUMB = 0;
}
if(MEVCUTDURUMB != ONCEKIDURUMB){
if(MEVCUTDURUMB == 1){
SET = SET - 0.2;
}
}

ONCEKIDURUMA = MEVCUTDURUMA;
ONCEKIDURUMB = MEVCUTDURUMB;
delay(10);
}



Yaptım sorunsuz çalışıyor. Şimdi de Profesyonel Buton yapalım.

Butona bir kez bastım. + 0,2 artırdı. Butondan elimi kaldırmadım 2sn sonra Hızlıca Yukarıya saysın (Örnek: Basılı tutarsam 2sn butonu, SET'i 100ms'de bir +0,2 artırsın.)
2sn nin altında kaldırılan butonlar sadece + 0,2 artırsın.

Aynı şekilde azaltmada öyle olsun. Bu nasıl olacak peki ???