İçindekiler:
- Adım 1: Malzeme Listesi
- Adım 2: Şematik ve Cicruit
- Adım 3: Kod
- Adım 4: Değerlerin Düzeltilmesi
- Adım 5: Eleştiri ve İncelemeden Sonra Proje
- Adım 6: Bazı Lehimleme İşlerinden Sonra
- 7. Adım: Gerçek Anı
- 8. Adım: Son
![Tek Pinli 4×4 Tuş Takımı: 10 Adım Tek Pinli 4×4 Tuş Takımı: 10 Adım](https://i.howwhatproduce.com/images/003/image-6304-9-j.webp)
Video: Tek Pinli 4×4 Tuş Takımı: 10 Adım
![Video: Tek Pinli 4×4 Tuş Takımı: 10 Adım Video: Tek Pinli 4×4 Tuş Takımı: 10 Adım](https://i.ytimg.com/vi/29XU6paoTn0/hqdefault.jpg)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
![Tek Pinli 4×4 Tuş Takımı Tek Pinli 4×4 Tuş Takımı](https://i.howwhatproduce.com/images/003/image-6304-10-j.webp)
Ne zaman bir tuş takımı görsem, bir sürü pin ile geliyor, bu Arduino pinlerinizin büyük bir israfı, yani bir tuş takımını tek pinli çalıştırabilir miyiz?. Cevap burada.
Adım 1: Malzeme Listesi
![Malzeme Listesi Malzeme Listesi](https://i.howwhatproduce.com/images/003/image-6304-11-j.webp)
Donanım:
01 Arduino UNO
02 Ekmek Tahtaları
I2C ile 01 LCD
16 Basmalı düğmeler
04 direnç 1.5 kΩ
04 direnç 620 Ω
04 direnç 220 Ω
08 direnç 100 Ω
01 direnç 1 kΩ
07 Atlama telleri
Yazılım:
PC'nizde kurulu Arduino IDE
Adım 2: Şematik ve Cicruit
![Şematik ve Cicruit Şematik ve Cicruit](https://i.howwhatproduce.com/images/003/image-6304-12-j.webp)
![Şematik ve Cicruit Şematik ve Cicruit](https://i.howwhatproduce.com/images/003/image-6304-13-j.webp)
Tüm fikir, sağdaki kabloyla toprağa dikey olarak ve diğer kabloyla (düğme kablosu) yatay olarak bağlanan 4 * 4 basma düğme matrisine ve 1.5 kΩ, 620Ω, 220Ω ve 100Ω dirençlerine sahip olmamızdır. 4 sıra, şematik olarak gösterildiği gibi dört adet 100Ω direnç ile bağlanır.
Bir düğmeye her bastığınızda devreyi kapatırsınız ve akım farklı bir yoldan ve farklı direnç zincirlerinden geçer, bu nedenle pim A0 her basma düğmesi için farklı bir analog okuma alır. Şimdi ihtiyacınız olan tek şey kodlama.
Adım 3: Kod
#Dahil etmek
#Dahil etmek
LiquidCrystal_I2C lcd(0x3f, 20, 4);
int Düğme = A0;
int okuma değeri;
geçersiz kurulum()
{
Seri.başla(9600);
lcd.begin();
pinMode(Düğme, GİRİŞ);
lcd.backlight();
lcd.print("Merhaba Dünya");
gecikme(2000);
lcd.clear();
lcd.print("Tek pinli 4*4 tuş takımı");
gecikme(2000); }
boşluk döngüsü()
{
okuma değeri = analogRead(Button);
Serial.println(okuma değeri);
if (readvalue==852){lcd.clear();lcd.print("A");}
else{ if (readvalue==763){lcd.clear();lcd.print("B");}
else{ if (readvalue==685){lcd.clear();lcd.print("C");}
else{ if (readvalue==965){lcd.clear();lcd.print("D");}
else{ if (readvalue==565){lcd.clear();lcd.print("9");}
else{ if (readvalue==614){lcd.clear();lcd.print("6");}
else{ if (readvalue==360){lcd.clear();lcd.print("3");}
else{ if (readvalue==335){lcd.clear();lcd.print("#");}
else{ if (readvalue==396){lcd.clear();lcd.print("8");}
else{ if (readvalue==349){lcd.clear();lcd.print("5");}
else{ if (readvalue==235){lcd.clear();lcd.print("2");}
else{ if (readvalue==279){lcd.clear();lcd.print("0");}
else{ if (readvalue==452){lcd.clear();lcd.print("7");}
else{ if (readvalue==271){lcd.clear();lcd.print("4");}
else{ if (readvalue==170){lcd.clear();lcd.print("1");}
else{ if (readvalue==92){lcd.clear();lcd.print("*");}else{}}}}}}}}}}}}}}}} }
Adım 4: Değerlerin Düzeltilmesi
![Değerlerin Düzeltilmesi Değerlerin Düzeltilmesi](https://i.howwhatproduce.com/images/003/image-6304-14-j.webp)
Seri monitörü açtığınızda 1023 değerini gösterecek, bir düğmeye basarsanız size başka bir okuma verecektir, bu değerleri alıp kodda bazı değişiklikler yapmanız gerekir.
Adım 5: Eleştiri ve İncelemeden Sonra Proje
![Eleştiri ve İnceleme Sonrası Proje Eleştiri ve İnceleme Sonrası Proje](https://i.howwhatproduce.com/images/003/image-6304-15-j.webp)
Hepimizin bilgimizi öğrenmek ve paylaşmak için burada olduğumuza şüphe yok, topluluktan bazı kişilerin çok yardımcı olan bazı yorumları sayesinde, projemde bazı ayarlamalar ve iyileştirmeler yapmaya karar verdim:
donanım:
Breadboard'larda kötü bağlantı sorununu önlemek için tüm bileşenleri bir PCB'de lehimlemeye karar verdim.
kod:
Bir arkadaşım bana bir yazılım geri tepme kullanmamı tavsiye etti ve programın bir okuma seçmesi biraz zaman almak için sadece bir döngü (örneğin "for" döngüsü), bu, çok fazla okuma yaptığı anlamına gelir (örneğimde 500) ancak sürer sadece sonuncusu.
for (i=1; i<= 500; i++) { // sadece 500'üncü analoğu alın
değer = analogRead(Button);} // bu biraz zaman ayırmaya ve kötü okumalardan kaçınmaya yardımcı olur
Onun sayesinde başka bir arkadaşım bana "okunan değeri" bir değil bir dizi değerle karşılaştırmamı tavsiye etti çünkü "okunan değer" aynı buton için çok fazla değer alıyor. Örneğin "A": 849, 850, 851 852, 853, 854, 855 yani 7 değer aralığıdır: bir eşik (852) ve sol ve sağ 3 değer. burada yapmamız gereken "readvalue" ile "852" ile "3" arasındaki farkın mutlak değerini karşılaştırmaktır.
if(abs(readvalue-852)<=8){lcd.clear();lcd.print("A");}
Adım 6: Bazı Lehimleme İşlerinden Sonra
![Bazı Lehimleme İşlerinden Sonra Bazı Lehimleme İşlerinden Sonra](https://i.howwhatproduce.com/images/003/image-6304-16-j.webp)
![Bazı Lehimleme İşlerinden Sonra Bazı Lehimleme İşlerinden Sonra](https://i.howwhatproduce.com/images/003/image-6304-17-j.webp)
![Bazı Lehimleme İşlerinden Sonra Bazı Lehimleme İşlerinden Sonra](https://i.howwhatproduce.com/images/003/image-6304-18-j.webp)
7. Adım: Gerçek Anı
![](https://i.ytimg.com/vi/VRmi_kxli3Y/hqdefault.jpg)
Gördüğünüz gibi program bazen düğmeleri karıştırıyor ama yine de çalışıyor, teoride devrede yanlış bir şey yok ama kodun daha fazla kalibrasyona ihtiyacı var.
8. Adım: Son
Umarım bu projeyi beğenirsiniz ve yapmaya çalışırsınız, belki benden daha iyisini yaparsınız.
Sorularınız varsa bana sorun, yorum bırakın ve beğendiyseniz bana oy vermeyi unutmayın.
Önerilen:
Tuş Takımı Servo Kilidi: 5 Adım
![Tuş Takımı Servo Kilidi: 5 Adım Tuş Takımı Servo Kilidi: 5 Adım](https://i.howwhatproduce.com/images/001/image-275-j.webp)
Tuş Takımı Servo Kilidi: Herkese merhaba, iyi bir gün geçirmeniz dileğiyle. Umarım değilse, bu eğitime ve bazı terapötik müziklere biraz açık fikirlilikle geri sarabilirsiniz. Programlama bir güçlük olabilir. Neyse ki, bu öğretici bir güçlük değil, bu yüzden belki de başarabilirsiniz
Second Life'ta Tek Tek Nesne Yüzeylerine Dokular Nasıl Uygulanır: 7 Adım
![Second Life'ta Tek Tek Nesne Yüzeylerine Dokular Nasıl Uygulanır: 7 Adım Second Life'ta Tek Tek Nesne Yüzeylerine Dokular Nasıl Uygulanır: 7 Adım](https://i.howwhatproduce.com/images/001/image-2317-63-j.webp)
Second Life'ta Tek Tek Nesne Yüzeylerine Dokular Nasıl Uygulanır: Second Life içinde, tek bir nesneye birden çok doku uygulama olanağınız vardır. İşlem çok basittir ve yapılarınızın görünümünü büyük ölçüde iyileştirebilir
Ccleaner ile Gönder'i Kullanarak Tek Tek Dosyaları Güvenli Parçalayın: 4 Adım
![Ccleaner ile Gönder'i Kullanarak Tek Tek Dosyaları Güvenli Parçalayın: 4 Adım Ccleaner ile Gönder'i Kullanarak Tek Tek Dosyaları Güvenli Parçalayın: 4 Adım](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10963323-secure-shred-individual-files-using-send-to-with-ccleaner-4-steps-j.webp)
Ccleaner ile Gönder Kullanarak Tek Tek Dosyaları Güvenli Parçalayın: Bu Talimat, sağ tıklamanıza CCleaner ile dosyayı silmenizi sağlayacak bir Gönder seçeneği eklemeniz gerektiğini gösterecektir
Ccleaner V2 ile Gönder'i Kullanarak Tek Tek Dosyaları Güvenli Parçalayın: 4 Adım
![Ccleaner V2 ile Gönder'i Kullanarak Tek Tek Dosyaları Güvenli Parçalayın: 4 Adım Ccleaner V2 ile Gönder'i Kullanarak Tek Tek Dosyaları Güvenli Parçalayın: 4 Adım](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10963334-secure-shred-individual-files-using-send-to-with-ccleaner-v2-4-steps-j.webp)
Ccleaner V2 ile Gönder'i Kullanarak Tek Tek Dosyaları Güvenli Olarak Parçalayın: Bu, kaşifte sağ tıklama "bağlam" menüsüne dosyaları Ccleaner aracılığıyla parçalamanıza izin verecek bir parçalama seçeneği eklemek için önceki öğreticimin geliştirilmiş bir sürümüdür. Bu yöntem daha fazlasını sunar. doğrudan yaklaşım ve soes ekleme gerektirmez
Tek Dokunuşla Tuş Takımı Ezici: 4 Adım (Resimlerle)
![Tek Dokunuşla Tuş Takımı Ezici: 4 Adım (Resimlerle) Tek Dokunuşla Tuş Takımı Ezici: 4 Adım (Resimlerle)](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10963520-one-touch-keypad-masher-4-steps-with-pictures-j.webp)
Tek Dokunuşla Tuş Takımı Ezici: Kapıyı her açmanız gerektiğinde bir kod yazarak değerli saniyelerinizi boşa mı harcıyorsunuz? Bu küçük 'aygıt' sizin için doğru tuşlara basarak süreci kolaylaştırır ve avucunuzun içine gizlenebilir, böylece elinizi tuş takımına ve - uygulama