İçindekiler:

Çift Buton LED Devresi: 5 Adım
Çift Buton LED Devresi: 5 Adım

Video: Çift Buton LED Devresi: 5 Adım

Video: Çift Buton LED Devresi: 5 Adım
Video: 3 Buton 5 LED 2024, Kasım
Anonim
Çift Buton LED Devresi
Çift Buton LED Devresi

Arduino ile programlama ve çalışma konusunda eski bir el gibi görünmek için elimden gelenin en iyisini yapacağım, ancak doğruyu söylemek gerekirse, gerçekte bu şeylerle sadece birkaç gün önce tanıştım, bu nedenle başarılı bir şekilde yaratma ve programlama konusundaki ezici sevincim. kendi projesi çok yakında.

Bu proje aslında birkaç günlüğüne staj yaptığım ailemin mühendis bir arkadaşının cesaretiyle başladı. Zorlukları seviyorum, meydan okumada beni heyecanlandıran ve başardığımda ezici bir tatmin duygusu veren bir şey var ve umarım siz de yaparsınız.

Bu eğitici yazıda, ilk hayatımda:D, Mark One projem olarak adlandırdığım devreyi nasıl bağlayacağınızı göstereceğim, iki düğmenin LED'in parlaklığını kontrol ettiği bir devre (biri parlaklığı artıracak ve ikincisi azaltacaktır) ve bunun nasıl programlanacağı ve sonuçlarınızı seri izleme aracına nasıl yansıtacağınız. Size tam olarak neye ihtiyacınız olduğunu ve bunun nasıl oluşturulacağına dair adım adım bir rehber göstereceğim. Projem, talimat web sitesinde hem buton hem de solma dersinin unsurlarını içeriyor ve sizinki kadar benim de rahatlığım için yoğun bir şekilde yorumlanıyor. Henüz programlama diline aşina değilseniz, lütfen zaman ayırın, buna değer.

Eğlence!

Adım 1: Malzemeler + Araçlar:

Malzemeler + Araçlar
Malzemeler + Araçlar

Malzemeler:

1. Bir Arduino kartı (Mega 2560 kullandım)

2. Bir breadboard (en az 60 sıralı)

3. Bir LED (herhangi bir renk, kırmızı kullandım)

4. İki standart buton

5. Beş mavi kablo (negatif akımı belirtmek için)

6. Üç kırmızı kablo (pozitif akımı belirtmek için)

7. Bir turuncu, yeşil ve sarı kablo (3 ana bileşeni ayırt etmek için PWM kontrol kabloları)

8. Dört beyaz kablo (devreyi bağlamak için)

9. Üç adet 10K ohm direnç (Kahverengi, Siyah, Turuncu, Altın)

Aletler:

1. Bir dizüstü bilgisayar

2. Arduino IDE uygulaması (Microsoft Play mağazasından indirilebilir)

VEYA

2. Arduino çevrimiçi web sitesi oluşturur (tercih ettiğiniz buysa)

3. Çevik eller

4. Google (talimatlar web sitesi bana çok yardımcı oldu)

5. Bir sürü sabır;D

Adım 2: Analog Devrenizi Kurun:

Analog Devrenizi Kurun
Analog Devrenizi Kurun

Analog ve Dijital sistemler arasındaki fark, Analog sistemlerin bir LED'in farklı parlaklıkları gibi farklı durumları kodlaması, Dijital ise yalnızca iki durumu (AÇIK veya KAPALI) kodlamasıdır.

Bu devre bir Analog devredir, çünkü amaç ışığın parlaklığını sadece açıp kapatmak değil, değiştirmekti.

Ayarlamak için:

1. Bir mavi (negatif için) kablo alın ve (Arduino'da) güç bağlantı noktalarındaki GND (toprak) bağlantı noktalarından birine takın ve devre tahtasında mavi negatif toprağın yanındaki sıralarda herhangi bir yere bağlayın.

2. Bir kırmızı (pozitif) kablo alın ve (Arduino'da) güç bağlantı noktalarındaki 5V bağlantı noktasına takın ve devre tahtasındaki kırmızı pozitif toprak hattına bitişik bir sıraya bağlayın [Breadboard'un nasıl çalıştığını öğrenin. düzen kurulur ve hangi satırların bağlı olduğu vs. Instructables ve Arduino web sitesinde tam da bunu yapmak için çok temiz dersler var]

3. Breadboard'un diğer ucunda, toprak hatlarını bağlamak için bir mavi ve bir kırmızı kablo kullanırsınız.

4. Ardından, hem pozitif hem de negatifin toprak sıralarını ortadaki 30. sıranın her iki tarafına bağlamak için dört beyaz kabloyu kullanın (küçük bir boşluk doldurmaları gerekir)

Adım 3: Basmalı Düğmeleri Ayarlayın:

Basmalı Düğmeleri Ayarlayın
Basmalı Düğmeleri Ayarlayın

1. Şimdi basma düğmelerinizi alın ve herhangi bir noktada devre tahtasının orta boşluğunu aşacak şekilde bağlayın (bir şeyleri daha kolay değiştirip düzeltebilmek için eşyalarımı biraz dağıtmayı seviyorum.

2. İki kırmızı kabloyu alın ve size bakan butonların sağ ayağını pozitif toprak hattına bağlayın.

3. İki mavi kablo alın ve mavi negatif toprak hattını, butonların sol ayaklarının birkaç sıra solundaki orta sıralarla dirençler için boşluk bırakarak bağlayın.

4. Şimdi 10K dirençleri (Kahverengi, Siyah, Turuncu, Altın) bir ayağı negatif mavi kabloyla aynı orta sırada ve diğer ayağı düğmenin sol ayağıyla aynı sırada olacak şekilde bağlayın.

[Bölmeyi birbirine bağlayan düğmeler ve analog kurulum için beyaz, kırmızı ve mavi kablolar hariç tüm bunlar, devre tahtasının ortasındaki bölmenin bir tarafına hala bağlıdır)

5. Şimdi sarı ve yeşil kabloyu alın ve orta bölmenin karşı tarafındaki sol bacağı 9 ve 11 pinleriyle bağlayın [Not: Analog sadece pin 3, 5, 6, 9, 10 ve 11'de çalışır]. Bu teller Arduino ile iletişim içindir.

Adım 4: LED'i Ayarlayın:

LED'i Ayarlayın
LED'i Ayarlayın

1. LED'i (seçtiğiniz renk) alın ve bağlantılarınızın çoğunun bulunduğu bölmenin yanına yerleştirin.

2. Bir mavi kablo alın ve negatif mavi toprak hattını LED'in kısa ayağı (anot) ile aynı sıraya bağlayın [Devre sadece negatif mavi çizgi LED i.o.w.'nin sağ bacağına bağlıysa çalışır. anot.

3. Başka bir 10K ohm direnç alın ve katodun (LED'in pozitif uzun ayağı) takılı olduğu sırayı merkez bölmenin aynı tarafında yakındaki bir sıraya bağlayın.

4. Şimdi turuncu kabloyu alın ve direnci Arduino'daki pin 3'e bağlayın

Devreniz şimdi tamamlandı, geriye kalan tek şey her şeyi programlamak

Adım 5: Devrenin Programlanması:

Tüm bunlar için biraz yeniyim, bu yüzden lütfen yalnızca kodu kopyaladığım ve video oluşturmadığım için kusura bakmayın…

İşte devrenin kodu:

// Benim (Altus Lourens) ilk projem:// 29 ile 30 Haziran 2018 arasında oluşturuldu

// Kendime not: AnalogWrite yalnızca 3, 5, 6, 9, 10 ve 11'de çalışır

// Not: Analog farklı durumlarla ilgilidir, Dijital sadece açık(YÜKSEK) veya kapalı(DÜŞÜK) için çalışır

// LED çıkışı olacak

// butonlar giriş olacak

// pushButton1, her basışta bir fadeAmount ile parlaklığı artıracak

// pushButton2, her basışta bir fadeAmount ile parlaklığı azaltır

// sabitler değişmeyecek, PWM pin numaralarını ayarlayın

const int ledPin = 3; // PWM LED pininin numarası

const int fadeAmount = 50; // düğmeye her basışta parlaklık değişimi

const int buttonPin1 = 11;

const int buttonPin2 = 9; // buton pin numarası

// değişecek değişken:

int parlaklık = 5; // LED'lerin başlangıç parlaklığı

int düğmeDurum1 = 0; // DÜŞÜK olarak başlayan düğmeyi belirtin

int buttonState2 = 0; // DÜŞÜK olarak başlayan düğmeyi belirtin

geçersiz kurulum() {

// bir kez çalıştırmak için kurulum kodunuzu buraya koyun:

// LED pinini çıkış olarak başlat:

pinMode(ledPin, OUTPUT);

// butonları girdi olarak başlat:

pinMode(buttonPin1, INPUT);

pinMode(buttonPin2, INPUT);

Seri.başla(9600); // devredeki iletişim hızı

}

// buttonPin1, LED'in parlaklığını artıracak

// buttonPin2, LED'in parlaklığını azaltacaktır

boşluk döngüsü () {

// tekrar tekrar çalıştırmak için ana kodunuzu buraya koyun:

// pin 9'un parlaklığını ayarlayın:

analogWrite(ledPin, parlaklık); // parlaklık = 5, LED yanıyor

parlaklık = kısıtlama(parlaklık, 0, 255); // parlaklığı 0 ile 255 arasında sınırla

// buton değerinin durumunu oku:

buttonState1 = digitalRead(buttonPin1);

buttonState2 = digitalRead(buttonPin2);

// düğmelere basılıp basılmadığını kontrol edin:

// ise -> buttonState = YÜKSEK:

// buton1:

if (buttonState1 == YÜKSEK) {

parlaklık = parlaklık + solmaAmount; // parlaklığı artır:

analogWrite(ledPin, parlaklık + fadeAmount);

}

else { // parlaklık aynı seviyede kalıyor ve LED hala kapalı:

analogWrite(ledPin, parlaklık);

}

// buton2:

if (buttonState2 == YÜKSEK) {

parlaklık = parlaklık - fadeAmount; // parlaklığı azalt:

analogWrite(ledPin, parlaklık - fadeAmount);

}

Başka {

// parlaklık aynı seviyede kalır, değişiklik olmaz:

analogWrite(ledPin, parlaklık);

}

Serial.print("parlaklık");

Seri.println(parlaklık); }

Artık iletişim hızını ayarlayabilir ve seri izleme aracı için mükemmel şekilde çalışan bir hız bulana kadar onunla biraz oynayabilirsiniz [9600 Baud yalnızca standart bir hızdır]

Önerilen: