Arama butonu
Bu konudaki kullanıcılar: 1 misafir
16
Cevap
192
Tıklama
0
Öne Çıkarma
KODU YAZDIĞIMDA SADECE 1. PİNDEKİ LAMBA ÇALIŞIYOR
G
2 yıl
Onbaşı
Konu Sahibi

void setup() {
pinMode(3, OUTPUT);
pinMode(1, OUTPUT);
}

void loop() {
digitalWrite(1, HIGH);
delay(1000);
digitalWrite(1, LOW);
delay(1000);

if (digitalRead(1) == HIGH) {
digitalWrite(3, HIGH);
} else {
digitalWrite(3, LOW);
}
}
Bu şekilde kodu yazıp devreyi de hazırlıyorum standart şekilde
Ancak sadece 1. PİNDEKİ lamba yanıp sönüyor 3. Pindekinde herhangi bi değişiklik olmuyor
Sorun ne olabilir



< Bu ileti mobil sürüm kullanılarak atıldı >

F
2 yıl
Yüzbaşı

Merhaba. digitalRead() fonksiyonunun örnek kodlarında okunacak pini setup içinde giriş olarak tanımlamışlar. Siz setup içinde çıkış olarak tanımladığınız pini digitalRead() fonksiyonu ile okumaya çalışmışsınız. Bu yüzden ne yapmaya çalıştığınız sadece kodlara bakarak anlaşılmıyor. Buna dikkat ettiniz mi?

Ayrıca digitalRead fonksiyonu ile okunacak pinin giriş veya çıkış olarak tanımlanmasından bağımsız olarak, üstteki cevapta da yazıldığı gibi kodlar adım adım çalıştırılıp sıra "if (digitalRead(1) == HIGH)" satırına geldiğinde kontrol edilen değer çoktan sıfırlanmış oluyor. 1 saniye önce çalıştırılan "digitalWrite(1, LOW);" satırı if bloğunu anlamsız hâle getiriyor.

digitalRead() - Arduino Reference





< Bu mesaj bu kişi tarafından değiştirildi F3SV mağduru -- 2 Aralık 2023; 1:59:38 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @izbırakanlarunutulmaz
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.