İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Hey, naber çocuklar! Akarsh burada CETech'ten.
Yedi Segment Ekranlara bakmak iyidir ve verileri rakamlar şeklinde görüntülemek için her zaman kullanışlı bir araçtır ancak bunların bir dezavantajı vardır ki, gerçekte Yedi Segment Ekranı kontrol ettiğimizde 8 farklı LED'i kontrol ediyor ve kontrol etmek için her biri farklı çıkışlara ihtiyacımız var, ancak yedi segmentli ekrandaki LED'lerin her biri için ayrı bir GPIO pini kullanırsak, mikrodenetleyicimizde Pin sıkıntısı yaşayabiliriz ve sonuçta diğer önemli bağlantıları yapacak yerimiz kalmaz. Bu size büyük bir sorun gibi görünebilir ama bu sorunun çözümü çok basit. Sadece 74HC595 Shift register IC'yi kullanmamız gerekiyor. Tek bir 74HC595 IC, 8 farklı noktaya çıkış sağlamak için kullanılabilir, bunun dışında bu IC'lerin bir kısmını bağlayabilir ve mikrodenetleyicinizin sadece 3 GPIO pinini tüketerek çok sayıda cihazı kontrol etmek için kullanabiliriz.
Bu projede, Arduino'nun 3 GPIO pinini kullanarak Yedi Segment ekranı kontrol etmek için Arduino ile 74HC595 Shift register IC kullanacağız ve bu IC'nin nasıl harika bir araç olabileceğini anlayacağız.
Adım 1: Üretilen Projeleriniz için PCB Alın
PCB'leri çevrimiçi olarak ucuza sipariş etmek için PCBWAY'e göz atmalısınız!
10 adet kaliteli PCB üretilir ve ucuza kapınıza kadar gönderilir. Ayrıca ilk siparişinizde kargoda indirim alırsınız. Gerber dosyalarınızı iyi kalitede ve hızlı geri dönüş süresiyle üretilmesini sağlamak için PCBWAY'e yükleyin. Çevrimiçi Gerber görüntüleyici işlevine göz atın. Ödül puanları ile hediyelik eşya dükkanlarından ücretsiz şeyler alabilirsiniz.
Adım 2: 74HC595 Shift Register Hakkında
74HC595 Shift Register, 16 Pinli bir SIPO IC'dir. SIPO, Seri Giriş ve Paralel Çıkış anlamına gelir; bu, her seferinde bir bit seri olarak giriş aldığı ve tüm çıkış pinlerinde paralel veya aynı anda çıkış sağladığı anlamına gelir. Shift yazmaçlarının genellikle depolama amaçlı kullanıldığını ve burada yazmaçların özelliğinin kullanıldığını biliyoruz. Veri, seri giriş pininden içeri kayar ve ilk çıkış pinine devam eder ve IC'nin içine başka bir Giriş gelene kadar orada kalır. ilk pime. Bu işlem, IC'nin deposu doluncaya, yani 8 giriş alana kadar devam eder. Ancak, IC deposu 9. girişi alır almaz dolduğunda, ilk giriş QH' pininden dışarı çıkar, eğer mevcut kayda QH' pini aracılığıyla zincirleme zincirlenmiş başka bir kaydırma yazmacı varsa, ardından veri buna geçer. kayıt olun, aksi takdirde kaybolur ve daha önce depolanan verileri kaydırarak gelen veriler gelmeye devam eder. Bu işlem Taşma olarak bilinir. Bu IC, mikrodenetleyiciye bağlanmak için sadece 3 GPIO pini kullanır ve bu nedenle mikrodenetleyicinin sadece 3 GPIO pinini tüketerek, bu IC'lerin bir kısmını birbirine zincirleyerek sonsuz cihazları kontrol edebiliriz.
Vardiya kaydı kullanan gerçek dünyadan bir örnek, 'Orijinal Nintendo Controller'dır. Nintendo Eğlence Sisteminin ana denetleyicisinin tüm düğmelere seri olarak basması gerekiyordu ve bu görevi gerçekleştirmek için bir vardiya kaydı kullandı.
Adım 3: 74HC595'in Pin Şeması
Bu IC bir dizi çeşit ve modelde mevcut olsa da, burada Texas Instruments SN74HC595N IC'nin Pinout'unu tartışacağız. Bu IC hakkında daha ayrıntılı bilgi için buradan veri sayfasına başvurabilirsiniz.
Shift Register IC aşağıdaki pinlere sahiptir: -
1) GND - Bu pin, mikrodenetleyicinin veya güç kaynağının Toprak pinine bağlanır.
2) Vcc - Bu pin, 5V mantık seviyesi IC olduğu için mikrodenetleyicinin Vcc'sine veya Güç kaynağına bağlanır. Bunun için 5V güç kaynağı tercih edilir.
3) SER - Bu Pin üzerinden seri olarak girilen Seri Giriş Pin verisidir yani her seferinde bir bit girilir.
4) SRCLK - Shift Register Clock Pinidir. Bu pin, Clock sinyali bu pin üzerinden uygulandığı için Shift Register için saat görevi görür. IC, bitleri Shift yazmacına kaydırmak için tetiklenen pozitif bir kenar olduğundan, bu saatin YÜKSEK olması gerekir.
5) RCLK - Register Clock pinidir. Bu çok önemli bir Pin çünkü bu IC'lere bağlı cihazlarda çıkışları gözlemleyebilmek için girişleri mandala kaydetmemiz gerekiyor ve bu amaçla RCLK pininin HIGH olması gerekiyor.
6) SRCLR- Shift Register clear Pin'dir. Shift kaydının deposunu temizlememiz gerektiğinde kullanılır. Register'da depolanan öğeleri bir kerede 0'a ayarlar. Negatif bir mantık Pinidir, bu nedenle kaydı temizlememiz gerektiğinde, bu pime DÜŞÜK bir sinyal uygulamamız gerekir, aksi takdirde YÜKSEK'te tutulmalıdır.
7) OE- Çıkış Enable Pinidir. Bu bir negatif mantık pinidir ve bu pin YÜKSEK olarak ayarlandığında, yazmaç yüksek bir Empedans durumuna ayarlanır ve Çıkışlar iletilmez. Çıkışları elde etmek için bu pini düşük olarak ayarlamamız gerekiyor.
8) Q1-Q7 - Bunlar Çıkış Pinleridir ve LED'ler ve Yedi Segment Ekran vb. Gibi bir tür Çıkışa bağlanması gerekir.
9) QH' - Bu Pin, bu QH'yi başka bir IC'nin SER pinine bağlarsak ve her iki IC'ye aynı saat sinyalini verirsek, bu IC'leri zincirleme olarak bağlayabilmemiz için oradadır, 16 ile tek bir IC gibi davranacaklardır. çıktılar. Tabii ki, bu teknik iki IC ile sınırlı değil – hepsi için yeterli gücünüz varsa istediğiniz kadar zincirleme yapabilirsiniz.
Adım 4: Ekranı Arduino ile 74HC595 Üzerinden Bağlama
Şimdi Shift Register IC hakkında yeterli bilgiye sahibiz, dolayısıyla Uygulama kısmına geçeceğiz. Bu adımda Arduino ile SSD kontrol etmek için 74HC595 IC üzerinden bağlantıları yapacağız.
Gerekli Malzemeler: Arduino UNO, Yedi Segment Ekran, 74HC595 Shift Register IC, Jumper kabloları.
1) IC'yi SSD'ye aşağıdaki şekilde bağlayın:-
- Bir direnç aracılığıyla Segment B için pini görüntülemek için IC Pin No. 1(Q1).
- Bir direnç aracılığıyla Segment C pinini görüntülemek için IC Pin No. 2(Q2).
- Bir direnç aracılığıyla Segment D için pini görüntülemek için IC Pin No. 3(Q3).
- Bir direnç aracılığıyla Segment E için pini görüntülemek için IC Pin No. 4(Q4).
- IC Pin No. 5(Q5), bir direnç aracılığıyla Segment F için pini görüntülemek için.
- Bir direnç aracılığıyla Segment G için pini görüntülemek için IC Pin No. 6(Q6).
- Bir direnç aracılığıyla Segment Dp için pini görüntülemek için IC Pin No. 7(Q7).
- Ekrandaki güç veya toprak rayına ortak pim. Ortak Anot Ekranınız varsa, güç rayına ortak bağlayın, aksi takdirde Ortak Katot Ekranı için toprak rayına bağlayın
2) IC'nin Pin No. 10'unu (Temiz Pimi Kaydet) güç rayına bağlayın. Aktif bir düşük pin olduğu için Register'ın silinmesini önleyecektir.
3) IC'nin 13 No'lu Pinini (Çıkış Etkinleştirme Pinini) toprak rayına bağlayın. Aktif-yüksek bir pindir, bu nedenle düşük tutulduğunda IC'nin çıkış vermesini sağlar.
4) Arduino Pin 2'yi IC'nin Pin12'sine (Latch Pin) bağlayın.
5) Arduino Pin 3'ü IC'nin Pin14'üne (Data Pin) bağlayın.
6) Arduino Pin 4'ü IC'nin Pin11'ine (Clock Pin) bağlayın.
7) IC'nin Vcc ve GND'sini Arduino'nunkine bağlayın.
Tüm bu Bağlantıları yaptıktan sonra karşınıza yukarıdaki resimdekine benzer bir devre çıkacak ve tüm bu adımlardan sonra Kodlama kısmına geçmeniz gerekiyor.
Adım 5: Yedi Segment Ekranı Kontrol Etmek İçin Arduino Kodlama
Bu adımda Arduino UNO'yu Seven Segment Display üzerinde farklı rakamları gösterecek şekilde kodlayacağız. Bunun için adımlar aşağıdaki gibidir: -
1) Arduino Uno'yu PC'nize bağlayın.
2) Buradan bu projenin Github deposuna gidin.
3) Depoda "7segment_arduino.ino" dosyasını açın, bu, bu projenin kodunu açacaktır.
4) Bu kodu kopyalayın ve Arduino IDE'nize yapıştırın ve panoya yükleyin.
Kod yüklendikçe, Ekranda 1 saniye gecikmeyle 0'dan 9'a kadar sayıların göründüğünü görebileceksiniz.
Adım 6: Bunu Kendiniz Yapabilirsiniz
Yani tüm bu adımları takip ederek yukarıdaki resimdeki gibi görünecek olan bu projeyi kendi başınıza yapabilirsiniz. Aynı projeyi Shift Register IC olmadan da deneyebilirsiniz ve bu IC'nin daha az sayıda GPIO pini kullanarak aynı anda birden fazla nesneye çıktı sağlamada nasıl yardımcı olduğunu öğreneceksiniz. Ayrıca bu IC'lerden birkaçını zincirleme bağlamayı deneyebilir ve çok sayıda sensörü veya cihazı vb. kontrol edebilirsiniz.
Umarım bu öğreticiyi beğenmişsinizdir.