Sizin gibi okuyucular MUO'yu desteklemeye yardımcı oluyor. Sitemizdeki bağlantıları kullanarak bir satın alma işlemi gerçekleştirdiğinizde, bir ortaklık komisyonu kazanabiliriz. Devamını oku.

Düşük maliyetli Raspberry Pi Pico mikrodenetleyici kartı, meraklıların teknik bilgilerini artırmak için projeleri keşfetmeleri için büyük esneklik sunar. Temel bilgileri öğrenmek, daha karmaşık görevlere doğru güvenle çalışmak için size sağlam bir bilgi tabanı sağlayacaktır.

Burada yedi segmentli bir ekranın her bir parçasını bir Raspberry Pi Pico ve bazı MicroPython koduyla nasıl kontrol edebileceğinizi keşfedeceğiz.

Neye ihtiyacınız olacak?

Aşağıdaki öğeler ürüne dahildir Raspberry Pi Pico için Kitronik Mucit Kiti. Yine de, eğer bir elektronik eşya istifçisiyseniz, büyük olasılıkla bu parçaları evinizde saklamış olacaksınız.

  • Yedi bölümlü ekran
  • 7 adet 220Ω direnç
  • 9x erkek-erkek jumper telleri
  • Breadboard

Ekli GPIO pin başlıkları olan bir Pico'ya ihtiyacınız olacak. Henüz yapmadıysanız, öğrenin Raspberry Pi Pico'da başlık pimlerini lehimleme.

instagram viewer

Donanımı Bağlama

Bu proje için kablolama karmaşık değil; ancak, oyunda bir avuç direnç ve jumper kablosu ile bu, tüm parçaların doğru pinlere bağlandığından emin olmak için tetikte olmanızı gerektirecektir. Bunu akılda tutarak, bileşenlerin Raspberry Pi Pico'nuz ve devre tahtası arasında nasıl bağlandığına bakalım.

İlk olarak, Pico üzerindeki bir GND pininden bir tel geçirin ve diğer ucunu negatif devre tahtası rayı boyunca herhangi bir deliğe yerleştirin. Kalan konektörler, devre tahtasının yedi bölümlü ekran ve dirençler etrafındaki parçalarına bağlanacaktır.

Jumper kabloları yönlendiriliyor GP16, GP17, Ve GP18 ekranın sağ tarafına ve ekranın üzerinde oturan dirençler doğrultusunda bağlanacaktır.

Yedi bölümlü ekranın sol tarafında, oradan geçen tellerin diğer tarafını çalıştırmanız gerekecek. GP15, GP14, GP13, Ve GP12 devre tahtası bağlantılarına. Yine, kabloları doğru dirençlerle aynı hizada bağladığınızdan emin olun.

Breadboard'un negatif rayı boyunca bağlanması gereken daha küçük bir aktarma kablosu vardır. Bu bağlantının diğer tarafı, ekranın hemen üzerindeki iki direnç arasında gidecek. Direnç bantlarınızın kırmızı, kırmızı, kahverengi ve altın (220 ohm için) olduğundan emin olun.

Sorunlarla mı karşılaşıyorsunuz? Dirençlerinizi test etmeyi düşünün (özellikle bir süredir elektronik bileşenler biriktiriyorsanız). rehberimize bakın multimetre ile direnç nasıl ölçülür test adımları için.

Kodu Keşfetmek

Thonny IDE'yi kullanarak ekranın yedi bölümünün her birini kontrol etme fırsatına sahip olacaksınız. Nasıl yapılacağına ilişkin kılavuzumuza göz atın Raspberry Pi Pico'da MicroPython'u kullanmaya başlayın daha fazla ayrıntı için. indirebilirsiniz 7segment.py gelen kod dosyası MUO GitHub deposu.

Kodun çok önemli bir parçası, ekranın yedi bölümünü Pico pinlerine atamaktır. GP12 başından sonuna kadar GP18, her biri bir değişken adına sahiptir (segA ile segG).

segA = makine. Pim (18, makine. Toplu iğne. DIŞARI)
segB = makine. Pim (17, makine. Toplu iğne. DIŞARI)
segC = makine. Pim (16, makine. Toplu iğne. DIŞARI)
segD = makine. Pim (15, makine. Toplu iğne. DIŞARI)
segE = makine. Pim (14, makine. Toplu iğne. DIŞARI)
segF = makine. Pim (13, makine. Toplu iğne. DIŞARI)
segG = makine. Pim (12, makine. Toplu iğne. DIŞARI)

adlı bir liste iğneler, bu değişkenleri aynı sırada tutar. İç içe geçmiş bir liste ("liste listesi" olarak da bilinir) sayılar, daha sonra her rakam için hangi segmentlerin yanacağını belirlemek için kullanılır; her satır 0'dan 9'a kadar bir basamağı ve basamak olmaması durumunda bir son satırı temsil eder. Listedeki bir "1", bölümün yanması gerektiğini belirtir; "0" olmaması gerektiği anlamına gelir.

bu ekranNumarası fonksiyon, hangi rakamın görüntülenmesi gerektiği ile çağrılacaktır; o rakamı göstermek için, ilgili satır sayılar listesi, atanan GPIO çıkış pinlerini tetikleyerek hangi segmentlerin yanacağını belirlemek için kullanılır.

Son olarak, bir iken Doğru: infiniteloop, 0'dan 9'a kadar saymak için displayNumber işlevini art arda ve ardından ters sırada çağırır. Bu tamamlandığında, ekran kısa bir süre için temizlenecektir. Oradan süreç yeniden başlayacak.

sırasındaDoğru:
(10) aralığındaki i için:
görüntülemeNumarası (i)
zaman.uyku_ms(600)

(9, -1, -1) aralığındaki i için:
görüntülemeNumarası (i)
zaman.uyku_ms(600)

Henüz tahmin etmediyseniz, bu döngü durmayacak. Kod, Raspberry Pi Pico'nuza sonsuz bir döngüde saymasını söyleyecektir. Yani, başarınızın yeniliği eskidiğinde, Thonny'de durdur düğmesine basmanız gerekecek.

Sırada Neyi Deneyeceksin?

Bu proje, Raspberry Pi Pico'nuzu ve ekstra yedi bölümlü ekranlarınızı kullanarak bir dijital saat yaratmanız için size ilham veriyor mu? Daha da iyisi, tam boyutlu bir Raspberry Pi bilgisayarıyla işinizi büyütün ve her sabah saat 7:00'de bir şarkı çalmak için bir cron programlayıcı yapılandırın. Müziği durdurup on dakika sonra ses çalarak bir erteleme düğmesi eklenebilir. Düğmeye üç kez bastığınızda, müzik yarına kadar kapanacak şekilde ayarlanabilir.