Butonlar, kendi kodlarını etkinleştirmek için bu küçük anahtarlara dayanan web genelinde sayısız projeyle, Arduino DIY alanında inanılmaz derecede yaygındır. Ancak Arduino'nuzla çalışmak için birden fazla düğmeyi tam olarak nasıl bağlayabilir ve programlayabilirsiniz? Hadi bulalım.

Ne Yapıyoruz?

Bu, gelecekte daha karmaşık Arduino yapılarına başlamanız için tasarlanmış basit bir projedir. Düğmelerimize bir iş vermeyeceğiz, ancak bu, diğer kullanışlı Arduino DIY kılavuzlarımızdan birini kullanarak kendiniz için ne yapmasını istediğinizi seçebileceğiniz anlamına gelir.

Ne istiyorsun?

Bu projeyi tamamlamak için sadece bir avuç parçaya ihtiyacınız var ve bunların çoğu zaten kendin yap parça koleksiyonunuzda olacak.

  • 4 x Basmalı düğme anahtarı
  • 4 x 10kΩ direnç
  • 1 x Herhangi Arduino kurulu türü (Leonardo kullanıyoruz)
  • PVC/silikon kaplı tel

Arduino ile Çoklu Butonların Kablolanması

Bu proje için kablolama basittir, ancak her bir düğme iki farklı kablo gerektirdiğinden, her bağlantıyı yaparken kablolarınızın birbirine karışmamasına dikkat etmelisiniz.

instagram viewer

Basitten başlayarak, pozitif ayağı 5V pime bağlıyken bir basmalı düğmeyi bağlamak mantıklıdır. Arduino'muzda ve Arduino'muzda hem GND'ye hem de Dijital Pin 2'ye bağlı düğmenin toprak ayağı Devre kartı. Düğmenin topraklama ayağı ile Arduino üzerindeki GND pini arasına bir direnç bağlanmalıdır.

Bir düğme bağlıyken, diğerlerini eklemenin zamanı geldi. Her düğmenin kendi Dijital Pimine ihtiyacı vardır; kullandığımız dört düğme için 2, 3, 4 ve 5'i seçtik, ancak Dijital Pimlerden herhangi biri işe yarayacak. Artık Arduino'nuz tamamen kablolu olduğuna göre, kod üzerinde çalışmaya başlamanın zamanı geldi.

Arduino ile Çoklu Buton Programlama

Projenin kodu, herhangi bir sınıf kitaplığına veya diğer karmaşık programlamaya ihtiyaç duymadan güzel ve basittir.

Pinlere Düğme Atama

İlk adım için Arduino kartımızdaki farklı pinlere butonlarımızı atamamız gerekiyor. Digital Pins 2, 3, 4 ve 5 kullandığımıza göre kodumuzla bildireceğimiz pinler bunlardır. Bu, herhangi bir fonksiyondan önce Arduino projenizin en üstüne yerleştirilmelidir.

int input4Pin = 5;
int input3Pin = 4;
int input2Pin = 3;
int input1Pin = 2;

Düğmeleri Ayarlama

Çoğu Arduino projesinde olduğu gibi, programın başında bir kez çalışacak bir fonksiyon kullanacağız. geçersiz kurulum(). İlk olarak 57600 baud hızı ile seri bağlantımızı başlatacağız, ardından butonlarımızı başlatacağız. Tüm ihtiyacımız olan bu geçersiz kurulum() işlev.

geçersiz kurulum()
{
Serial.başlangıç ​​(57600); // bu, 57600 baud hızıyla seri bağlantıyı başlatır
pinMode (input4Pin, INPUT);
pinMode (input3Pin, INPUT);
pinMode (input2Pin, INPUT);
pinMode (giriş1Pin, GİRİŞ); // bu satırlar butonların her birini girdi olarak bildirir
}

Düğme Basımlarını Algılama

Bu sonraki aşama diğerlerinden daha karmaşıktır, çünkü ana döngü işlevinden bir değişkenle ilgilenecek kendi işlevimizi oluşturacağız. Başlamak için, fonksiyonumuzu aşağıdaki kod gibi bir tamsayı değişkeni ile bildirmemiz gerekiyor.

geçersiz checkPush (int pinNumber)

Bunu takiben, kullandığımız değişkeni atamamız ve bir tane oluşturmamız gerekiyor. Eğer Her düğmeye ne zaman basıldığını algılamak için ifade. Bu işlev, ana döngü işlevinden aldığı değişkeni kullanarak bir seferde yalnızca düğmeyi kontrol edebilir, böylece hangi düğmeyi kontrol ettiğini bilir. Bizim Eğer deyimi yerleşik kullanarak düğmenin durumunu kontrol eder dijitalOkuma işlev.

geçersiz checkPush (int pinNumber) 
{
int buttonPushed = digitalRead (pinNumber);
if (buttonPushed == YÜKSEK) {
// bir butona basıldığında kullanılacak kodu buraya ekleyin
}
Başka {
// butona basılmadığında kodu buraya ekleyin
}
}

Eklenen kod Eğer deyimi, bir düğmeye basıldığında çalışacaktır, kodda ise Başka deyimi yalnızca bir düğmeye basılmadığında çalışır.

Ana Döngüyü Oluşturma

Son olarak, programınıza eklemeniz gereken son kod parçası olarak, boşluk döngüsü() işlev. Sadece dört satır koda ihtiyacımız var: Arduino'muza eklediğimiz her bir düğme için bir tane. Bu satırlar, her bir butonun pin numarası ile bir önceki adımda oluşturduğumuz fonksiyonu çağırır.

boşluk döngüsü()
{
kontrol Bas (5);
kontrol et (4);
kontrolPush (3);
kontrolPush (2);
}

Bitmiş Kod

Tüm bu kodu yerleştirdikten sonra, bitmiş programınız aşağıdaki kod gibi görünmelidir. Anlamayı kolaylaştırmak için her satıra yorumlar ekledik, ancak tanımadığınız herhangi bir şeye bakmanızı ve okumanızı öneririz. Bu, kodlama bilginizi genişletmenin harika bir yolu olabilir.

int input4Pin = 5;
int input3Pin = 4;
int input2Pin = 3;
int input1Pin = 2;
// bu, düğmelerimizin her birini ve pinlerini bildirir
// butonlarınızın bağlı olduğu pinleri kullandığınızdan emin olun
geçersiz kurulum()
{
Serial.başlangıç ​​(57600); // bu, 57600 baud hızıyla seri bağlantıyı başlatır
pinMode (input4Pin, INPUT);
pinMode (input3Pin, INPUT);
pinMode (input2Pin, INPUT);
pinMode (giriş1Pin, GİRİŞ); // bu satırlar butonların her birini girdi olarak bildirir
}
boşluk döngüsü()
{
kontrol Bas (5);
kontrol et (4);
kontrolPush (3);
kontrolPush (2); // bu satırların her biri farklı bir pin numarası ile checkPush fonksiyonumuzu çağırır
}
void checkPush (int pinNumber) // bu fonksiyon çağrıldığında bir tamsayı değeri bekler
{
int buttonPushed = digitalRead (pinNumber); // bu, pin numarasına göre bir düğmenin durumunu okur
if (buttonPushed == HIGH) { // bu, düğmenin durumunu kontrol eder
// bir butona basıldığında kullanılacak kodu buraya ekleyin
}
Başka {
// butona basılmadığında kodu buraya ekleyin
}
}

Başarı: Arduino ile Çoklu Butonların Kablolanması ve Programlanması

Bu, Arduinos için donanım ve yazılım hakkında bilgi edinmek istediğinizde başlamak için kolay bir projedir. Ek bileşenlerle yaptıklarınızı kolayca genişletebilir, size çok sayıda heyecan verici fikir keşfetme ve sizi gururlandıran şeyler yaratma şansı verebilirsiniz.

Yeni Başlayanlar için Arduino Programlama: Trafik Işığı Kontrolörü Projesi Eğitimi

Sonrakini Oku

PaylaşCıvıldamakPaylaşE-posta

İlgili konular

  • kendin yap
  • Programlama
  • Arduino
  • Elektronik
  • Programlama
  • Kendin Yap Projesi Eğitimleri

Yazar hakkında

Samuel L. Garbett (36 Makale Yayımlandı)

Samuel, kendin yap ile ilgili her şeye tutkuyla bağlı, İngiltere merkezli bir teknoloji yazarıdır. Uzun yıllar yazar olarak çalışmanın yanı sıra web geliştirme ve 3D baskı alanlarında işe başlayan Samuel, teknoloji dünyasına benzersiz bir bakış açısı sunuyor. Ağırlıklı olarak kendin yap teknolojisi projelerine odaklanarak, evde deneyebileceğiniz eğlenceli ve heyecan verici fikirleri paylaşmaktan başka bir şey sevmiyor. İş dışında, Samuel genellikle bisiklet sürerken, bilgisayar oyunları oynarken veya çaresizce evcil yengeciyle iletişim kurmaya çalışırken bulunabilir.

Samuel L.'dan Daha Fazla Garbett

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın