ulastutcu
Üye
- Katılım
- 16 Eki 2016
- Mesajlar
- 7
- Puanları
- 1
- Yaş
- 30
Merhabalar bir proje üzerinde çalışıyorum
Projemde 4 Buton
(Buton 1 = LED 1 Açma-Kapama için)
(Buton 2 = LED 2 Açma-Kapama için)
(Buton 3 ve 4 ise bu iki ledin parlaklıklarını kontrol etmek için)
Kodlar ayrı ayrıyken sorun yok. Ledler açıp kapanıyor pwm işlemi çalışıyor
Ancak iki kodu birleştirdiğim zaman. Ledler açılıyor ve kapanıyor. Ancak PWM işlemleri çalışmıyor
Muhtemelen bir döngü işlemi gerekiyor. Ancak bunu başaramadım. Yardım ederseniz sevinirim
Tek LED için Örnek Kodlama (Bir açma-kapatma ve diğer iki buton PWM için)
Projemde 4 Buton
(Buton 1 = LED 1 Açma-Kapama için)
(Buton 2 = LED 2 Açma-Kapama için)
(Buton 3 ve 4 ise bu iki ledin parlaklıklarını kontrol etmek için)
Kodlar ayrı ayrıyken sorun yok. Ledler açıp kapanıyor pwm işlemi çalışıyor
Ancak iki kodu birleştirdiğim zaman. Ledler açılıyor ve kapanıyor. Ancak PWM işlemleri çalışmıyor
Muhtemelen bir döngü işlemi gerekiyor. Ancak bunu başaramadım. Yardım ederseniz sevinirim
Tek LED için Örnek Kodlama (Bir açma-kapatma ve diğer iki buton PWM için)
Kod:
const int yukselt = 5;
const int azalt = 4;
const int maxparlaklik = 12;
int parlaklik = maxparlaklik;
int interval=1;
int led=11;
int buton=2;
int butonDurum;
int ledDurum=0;
int x=0;
void setup(){
pinMode(led, OUTPUT);
pinMode(buton, INPUT);
pinMode(yukselt, INPUT);
pinMode(azalt, INPUT);
}
void loop(){
butonDurum=digitalRead(buton);
if(butonDurum==HIGH && x==0){
x=1;
if(ledDurum==0) ledDurum=1;
else if(ledDurum==1) ledDurum=0;
}
else if(butonDurum==LOW && x==1){
x=0;
}
if (ledDurum==1){
digitalWrite(led, HIGH);
}
else{
digitalWrite(led, LOW);
}
if (digitalRead(yukselt) == HIGH && parlaklik < maxparlaklik){
parlaklik = parlaklik + interval;
}
if (digitalRead(azalt) == HIGH && parlaklik > 0){
parlaklik = parlaklik - interval;
}
delay(100);
analogWrite(led, map(parlaklik, 0, parlaklik, 0, 255));
}