Arduino - Yanıp Sönen LED

'Merhaba Dünya!' Arduino, yanıp sönen LED!

Eğer herhangi bir Arduino kullanıcısına ilk yazdıkları programın [Arduino için] ne olduğunu sorduysanız, muhtemelen bunun bunun olduğunu söylerlerdi. Başlamak için ihtiyacınız olan tek şey:

- Arduino [Bir UNO kullandım, ama herhangi biri yapacak]

- Bir LED A direnci [İhtiyacınız olan tam ohm dereceli direnci hesaplamak için birçok hesap makinesi vardır, ancak genellikle sadece 330ohm olanı kullanıyorum]

- Tel

- Lehimsiz breadboard

Adım 1: Devre

İlk olarak, Arduino'nuzdaki pim 7'yi breadboard'unuzdaki bir noktaya, ardından direncinize bağlayın. Direncin diğer tarafında LED'inizi takın.

NOT: LED'ler polarizedir, yani üflememeniz gerekiyorsa bağlanması gereken belirli bir yolları vardır. LED'in pozitif kablosunu dirence bağlayın ve toprak kablosundan Arduino'daki GND pinine bir kablo geçirin. Sonuç, bu eğitimdeki şematik gibi görünmelidir.

2. Adım: Kod

Şimdi kodlama yarısı için. Arduino'nun gerçek büyüsü burada gerçekleşir. Bu küçük mavi tahta aklınıza gelebilecek hemen hemen her şeyi yapacak şekilde programlanabilir. Bunun için yazmamız gereken kod oldukça basit, ancak önce Arduino IDE'yi web sitelerinden indirmeniz gerekiyor.

Başlamak için IDE'nizi kodunuzu yazacak şekilde ayarlamak istiyorsunuz. Her Arduino programının çalışması için bu iki şeye ihtiyacı vardır. Bunu yazarak başlayın:

void setup () {
}
void loop () {
}

Bunun nasıl çalıştığı, Arduino'nuzu sıfırladığınızda veya önyüklediğinizde 'geçersiz kurulum' bölümündeki kodun çalıştırılmasıdır. Bu bittiğinde, 'void loop' Arduino'dan güç kesilene kadar tekrar tekrar çalışır. Yine de 'geçersiz kurulum' öncesinde, yedinci pime bir isim atamak istiyoruz, böylece daha sonra neyi kontrol ettiğimizi biliyoruz. 'Geçersiz kurulum'dan önce yaz:

int liderliğindeki = 7;

Bu, 'led' tamsayı 7 ismini atar. Şimdi kodumuza 'led' yazdığımızda, Arduino bunu 7 olarak yorumlayacaktır. 'Void kurulumunuzda, Arduino'ya izin verecek bir kod satırı yazmak istiyoruz pim 7'nin veya bir çıktının hareket etmesini istediğimizi biliyorum. Bir çıkış YÜKSEK veya DÜŞÜK olan bir pimdir, yani AÇIK veya KAPALI'dır. Ama henüz bunun için endişelenmemize gerek yok. ÇIKTI'nın elektrik verdiğini ve INPUT'un pimlerden bilgi topladığını unutmayın. Void setup () {'dan sonra şunu yazın:

pinMode (led, ÇIKIŞ);

Her satırın noktalı virgülle bitmesinin çok önemli olduğunu unutmayın.
Şimdi LED'in gerçek kontrolü için. Void loop () {sonra, şunu yazın:

digitalWrite (led, YÜKSEK);

Bu, pimi 7 YÜKSEK veya AÇIK olarak ayarlayacaktır, yani yüksekken voltaj çıkışıdır. Kodunuzu şimdi çalıştırdıysanız, LED yanar ve yanık kalır. İsterseniz deneyin. Ama bu öğreticinin amacı LED'in yanıp sönmesini sağlamaktı, değil mi? Bir sonraki satıra “delay (1000);” yazın
Bu, Arduino'yu tam bir saniye duraklatacaktır. Yarım saniye olmasını istiyorsanız 1000 yerine 500 yazın. Bu sayıyı istediğiniz gibi yapabilirsiniz. Ama yine de yanıp sönmüyor.
Bundan sonraki satıra şunu yazın:

digitalWrite (led, DÜŞÜK);

Gecikmeyi ayarladığınız süreden sonra LED'inizi kapatır. Kodunuzu şimdi çalıştırın. Garip bir şey fark ettiniz mi? Hala yanıp sönmüyor! Biraz düşünün ve void döngü fonksiyonu hakkında size söylediklerimi aklınızda tutarak, kendiniz çalışıp çalışamayacağınızı görün.

Çalıştın mı?

Eğer yapmadıysanız endişelenmeyin, kafa karıştırıcı olabilir. Ayrıca iyi denemediyseniz arkadaşım demek istemezsiniz: P
Her neyse, bunun nedeni, LED'i kapatan çizgiye ulaşır ulaşmaz dönüyor olması ve tekrar açıldığı yere geri dönmesidir. LED'in kapalı olduğunu gözlemlemek için zamanınız yok. Çözüm? LED'i kapattıktan sonra başka bir gecikme hattı ekleyin. Hey presto, yanıp sönen bir LED'in var!

Son kodunuz aşağıdaki gibi görünmelidir:

int liderliğindeki = 7;
void setup () {
pinMode (led, ÇIKIŞ);
}

void loop () {
digitalWrite (led, YÜKSEK);
Gecikme (1000);
digitalWrite (led, DÜŞÜK);
Gecikme (1000);
}

3. Adım: Daha İleriye Gitmek

Tamsayılarla konuştuğumuz şeyi kullanarak, gecikme kodunu değiştirmek gibi biraz daha ilginç bir şey oluşturabilirsiniz:

int liderliğindeki = 7;
int del = 1000;

void setup () {
pinMode (led, ÇIKIŞ);
}

void loop () {
digitalWrite (led, YÜKSEK);
gecikmesi (del);
digitalWrite (led, DÜŞÜK);
gecikmesi (del);
}

Bu sadece 1000 sayısını depolanmış bir tamsayı ile değiştirmektir. Bunu birçok farklı şekilde kendi yararınıza kullanabilirsiniz. Aşağıdaki kodu açıklamayacağım, kendiniz için nasıl çalıştığını öğrenebilirsiniz, ancak sonsuz olasılıkların sadece bir örneğidir.

int liderliğindeki = 7;
int del = 5000;

void setup () {
pinMode (led, ÇIKIŞ);
}

void loop () {
digitalWrite (led, YÜKSEK);
gecikmesi (del);
digitalWrite (led, DÜŞÜK);
gecikmesi (del);
del = del - 100;
}

İlgi̇li̇ Makaleler