İçindekiler:

Arduino ve Python Seri Haberleşme - Tuş Takımı Ekranı: 4 Adım
Arduino ve Python Seri Haberleşme - Tuş Takımı Ekranı: 4 Adım

Video: Arduino ve Python Seri Haberleşme - Tuş Takımı Ekranı: 4 Adım

Video: Arduino ve Python Seri Haberleşme - Tuş Takımı Ekranı: 4 Adım
Video: Arduino Dersleri #6 Seri Haberleşme 2024, Kasım
Anonim
Arduino ve Python Seri Haberleşme - Tuş Takımı Ekranı
Arduino ve Python Seri Haberleşme - Tuş Takımı Ekranı

Bu proje mac kullanıcıları için yapılmıştır ancak Linux ve Windows için de uygulanabilir, farklı olması gereken tek adım kurulumdur.

Adım 1: Yazılım Kurulumu

Yazılım yükleme
Yazılım yükleme
  1. Arduino'yu İndirin ve Kurun ->
  2. Python 2.7'yi İndirin ve Yükleyin ->
  3. "pyserial-2.7.tar.gz" Python kitaplığını indirin ->
  4. pyserial-2.7.tar.gz dosyasını açın
  5. Terminal'i açın ve şunu yazın:

cd /users/"Kullanıcı-Hesabınız"/Downloads/pyserial-2.7

sudo python setup.py kurulumu

Yazılım kurulumu hazır!

Adım 2: Kablolama

kablolama
kablolama
kablolama
kablolama
kablolama
kablolama
kablolama
kablolama
  1. Arduino Uno'su
  2. Sparkfun 12 Düğme tuş takımı

Kablolama harici dirençler olmadan yapılır, bunun yerine mikrodenetleyicinin dahili Pullup-Dirençlerini kullandım (Arduino'nun dahili Pullup-Dirençleri 20K-Ohm ila 50K-Ohm arasında bir değere sahiptir)

Dahili Çekme Dirençlerini etkinleştirmek için koddaki GİRİŞ-Pimlerini YÜKSEK olarak ayarlayın

Başka bir Tuş Takımı kullanırsanız, doğru kablolama için veri sayfasına bakın, aksi takdirde mikrodenetleyicinize zarar verebilir.

Adım 3: Arduino Kodu

Arduino Kodu
Arduino Kodu
  • İlk önce Anahtarlar için bir karakter-Matrisi tanımlıyoruz
  • Tuş takımı, 4 sıra (Pin 7, 2, 3 ve 5) ve 3 sütun (Pin 6, 8 ve 4) olarak düzenlenmiş normal anahtar konektörlerini kullanır, Diziler rowPins ve colPins olarak tanımlanır
  • kurulum() işlevi

    • Seri kapıyı Serial.begin() ile açın;
    • Sütunları OUTPUT-Pins HIGH olarak ayarla
    • Bu set satırlarını INPUT-Pins HIGH olarak yapmak için Pullup-Dirençlerini etkinleştirin;
  • getkey() işlevi

    • Her satırı DÜŞÜK olarak ayarlayın ve sütunlardan birinin DÜŞÜK olup olmadığını test edin. Çekme Dirençleri nedeniyle, bir tuşa basılana kadar tüm satırlar YÜKSEK'tir. Basılan anahtar, INPUT-Pin'de bir DÜŞÜK Sinyal üretir. Bu DÜŞÜK, bu satır ve sütunda basılan tuşu gösterir.
    • Tuş bırakılana kadar bekleyin ve tuş haritası dizisinin karakterini veya herhangi bir tuşa basılmamışsa 0'ı döndürün
    • Sinyali stabilize etmek için bir gecikme (debounceTime) kullanın

Adım 4: Python_2.7 Kodu

Python_2.7 Kodu
Python_2.7 Kodu
  • Seri Kitaplığını İçe Aktarın
  • Bir değişken tanımlayın connect=FALSE, daha sonra bu değişken seri bağlantının mevcut olup olmadığını test etmek için kullanılır
  • Seri Bağlantı Noktasını serial. Serial("Seri Bağlantı Noktanızın Adı", baud) ile açın

    • Seri portunuzun adını almak için Arduino IDLE'da -> Araçlar/Seri Port'a tıklayın.
    • baud, Arduino Kodundaki ile aynı olmalıdır
  • Bir süre döngüsü testinde, bağlantı mevcutsa veya seri sinyali okumuyorsa ve bağlı = DOĞRU değişkenini ayarlıyorsa, seri bağlantı elde edene kadar döngü yapar.
  • Bağlantıdan sonra seriyi bir süre döngüsünde okuyun ve bu girişi yeni bir "var" değişkenine koyun
  • portu ser.close() ile kapatın

Önerilen: