İçindekiler:

Çoklu LED Ekran Modülü: 6 Adım (Resimlerle)
Çoklu LED Ekran Modülü: 6 Adım (Resimlerle)

Video: Çoklu LED Ekran Modülü: 6 Adım (Resimlerle)

Video: Çoklu LED Ekran Modülü: 6 Adım (Resimlerle)
Video: TİKTOK DİLENCİLERİ PART 1 DAHA NELER DEDİRTEN Video #tiktok #tiktokvideo #tiktokvideo 2024, Kasım
Anonim
Image
Image
Çoklu LED Ekran Modülü
Çoklu LED Ekran Modülü
Çoklu LED Ekran Modülü
Çoklu LED Ekran Modülü

Hepinize merhaba, 7 segmentli veya nokta vuruşlu LED ekranlarla çalışmayı seviyorum ve onlarla zaten birçok farklı proje yaptım.

Her zaman ilginçtirler çünkü nasıl çalıştıkları konusunda bir tür sihir vardır çünkü gördükleriniz optik bir yanılsamadır!

Ekranlar, bir Arduino (veya başka bir mikro denetleyici) ile bağlantı için çok sayıda pime sahiptir ve en iyi çözüm, bağlantı noktalarının kullanımını en aza indirmek için veri çoğullama tekniklerini uygulamaktır.

Bunu yaptığınızda, her bir segment veya her LED birkaç saniye (milisaniye veya daha az) için yanar, ancak bunun saniyede birçok kez tekrarlanması, göstermek istediğiniz görüntünün yanılsamasını yaratır.

Benim için en ilginci projenize göre doğru bilgiyi nasıl gösterebileceklerini öğrenmek için mantığı, programı geliştirmek.

Tek bir projede ekranları kullanmak, tüm bileşenleri bağlantı için çok sayıda kabloya sahip bir devre tahtasında birleştirmek için çok zaman gerektirir.

Piyasada I2C ile çalışan, programlamak için basitleştirilmiş yollarla (veya değil) birçok farklı ekran olduğunu biliyorum ve onları da kullandım ancak 74HC595 (multiplexer IC) ve ULN2803 (sürücüler) gibi standart bileşenlerle çalışmayı tercih ediyorum çünkü programınızda size daha fazla kontrol ve ayrıca kullanımınızda daha fazla sağlamlık ve güvenilirlik sağlarlar.

Montaj sürecini basitleştirmek için Arduino dünyasındaki basit ve yaygın bileşenleri kullanarak çok amaçlı bir LED Dipslay Modülü geliştirdim.

Bu modül ile iki standart boyutta (büyük ve küçük) çift renkli LED'li dot matrix ile çalışabilir ve ayrıca piyasada çok yaygın ve kolayca bulunabilen 7 Seg x 4 Haneli ekranı kontrol edebilirsiniz.

Ayrıca bu modüllerle seri olarak (farklı veriler ekranlara) veya paralel olarak (aynı veriler ekranlara) kademeli olarak çalışabilirsiniz.

Şimdi bu modülün nasıl çalışabileceğini ve geliştirmelerinizde size nasıl yardımcı olabileceğini görelim!

Video (LED Ekran Modülü)

Video (Dot Matrix Testi)

Saygılarımızla, LAGSILVA

Adım 1: Bileşenler

Bileşenler
Bileşenler
Bileşenler
Bileşenler
Bileşenler
Bileşenler
Bileşenler
Bileşenler

PCB (Baskılı Devre Kartı)

- 74HC595 (03x)

- ULN2803 (02 x)

- Transistör PNP - BC327 (08 x)

- Direnç 150 Ohm (16 x)

- Direnç 470 Ohm (08 x)

- Kapasitör 100 nF (03 x)

- IC Soketi 16 pim (03 x)

- IC Soketi 18 pim (02 x)

- Pin konnektör dişi - 6 pin (8 x)

- Pin başlıkları 90º (01 x)

- Pin başlıkları 180º (01 x)

- Conector Borne KRE 02 pimleri (02 x)

- PCB (01 x) - Üretildi

Diğerleri

- Arduino Uno R3 / Nano / benzeri

- LED Ekran 04 Haneli x 7 Segment - (Ortak Anot)

- LED Nokta Vuruşlu Çift Renkli (Yeşil ve Kırmızı) - (Ortak Anot)

Önemli Açıklamalar:

  1. Tüm en önemli bileşenlerin veri sayfasını yalnızca referans olarak koydum, ancak kullanmadan önce kendi bileşenlerinizin veri sayfasını kontrol etmelisiniz.
  2. Bu kart yalnızca ORTAK ANODE ekranlarını kullanmak için tasarlanmıştır.

Adım 2: İlk Prototipler

İlk Prototipler
İlk Prototipler
İlk Prototipler
İlk Prototipler
İlk Prototipler
İlk Prototipler
İlk Prototipler
İlk Prototipler

İlk prototipim devreyi test etmek için bir devre tahtası üzerinde yapıldı.

Daha sonra resimlerde gördüğünüz gibi evrensel bir tahta kullanarak başka bir prototip yaptım.

Bu tür bir pano, hızlı bir prototip üretmek için ilginçtir, ancak bunun hala çok fazla kablo tuttuğunu fark ediyorsunuz.

İşlevsel bir çözümdür ancak nihai üretilmiş bir PCB (mavi olan) ile karşılaştırıldığında o kadar zarif değildir.

Lehimleme konusunda iyi değilim çünkü bu işlemle ilgili yeterli deneyimim yok ama bunda bile hem deneyimlerle iyi sonuçlar aldım ve daha da önemlisi: Ne bir parçayı ne de ellerimi yakmadım!

Muhtemelen bir sonraki panomdaki sonuçlar uygulama nedeniyle daha iyi olacaktır.

Bu nedenle, bu tür bir deneyimi denemenizi tavsiye ediyorum çünkü bu sizin için mükemmel olacak.

Sadece sıcak ütüye dikkat etmeyi unutmayın ve yanmasını önlemek için bir parça üzerinde birkaç saniyeden fazla harcamamaya çalışın !!

Ve son olarak Youtube'da lehimleme ile ilgili gerçek dünyaya geçmeden önce öğrenebileceğiniz birçok video bulabilirsiniz.

Adım 3: PCB Tasarımı

PCB Tasarımı
PCB Tasarımı
PCB Tasarımı
PCB Tasarımı
PCB Tasarımı
PCB Tasarımı
PCB Tasarımı
PCB Tasarımı

Bu PCB'yi çift katmanlı bir kart üretmek için özel bir yazılım kullanarak tasarladım ve bu sonuncusundan önce birkaç farklı versiyon geliştirildi.

Başlangıçta her tür ekran için bir versiyonum vardı ve sonuçta her şeyi tek bir versiyonda birleştirmeye karar verdim.

Tasarım Hedefleri:

  • Prototipler için basit ve kullanışlı.
  • Kolay kurulum ve genişletilebilir.
  • 3 farklı türde ekran kullanabilme özelliği.
  • LED'in büyük nokta matrisinin maksimum genişliği.
  • Levha üretim maliyetlerini en aza indirmek için maksimum uzunluk 100 mm'dir.
  • Manuel lehimleme işlemi sırasında daha fazla zorluktan kaçınmak için SMD yerine geleneksel bileşenleri uygulayın.
  • Panonun diğer panolara kademeli olarak bağlanabilmesi için modüler olması gerekir.
  • Diğer kartlar için seri veya paralel çıkış.
  • Birkaç kart sadece bir Arduino tarafından kontrol edilmelidir.
  • Arduino'nun bağlantısı için sadece 3 telli veri.
  • Harici 5V güç bağlantısı.
  • LED'leri kontrol etmek için transistörler ve sürücüler (ULN2803) uygulayarak elektriksel sağlamlığı artırın.

Açıklama:

Bu son öğeyle ilgili olarak, bu bileşenlerle ilgili başka bir Talimatımı okumanızı tavsiye ederim:

ULN2803, UDN2981 ve BC327 ile Shift Register 74HC595'i kullanma

PCB üretimi:

Tasarımı bitirdikten sonra, farklı yerel tedarikçilerle ve farklı ülkelerde birçok arama yaptıktan sonra Çin'deki bir PCB üreticisine gönderdim.

Asıl mesele, tahtaların miktarına karşı maliyetle ilgiliydi çünkü bunlardan sadece birkaçına ihtiyacım var.

Sonunda, Çin'deki bir şirkete sadece 10 panoluk düzenli bir sipariş vermeye karar verdim (yüksek maliyetler nedeniyle hızlı bir sipariş değil).

Sadece 3 gün sonra panolar üretildi ve 4 gün içinde dünyayı geçerek bana gönderildi.

Sonuçlar mükemmeldi!!

Satın alma siparişinden bir hafta sonra panolar elimdeydi ve bunların yüksek kalitesi ve hızlı hızından gerçekten çok etkilendim!

Adım 4: Programlama

Programlama
Programlama
Programlama
Programlama

Programlama için, donanım tasarımı ve 74HC595 kaydırma yazmacı hakkında bazı önemli kavramları aklınızda tutmalısınız.

74HC595'in ana işlevi, 8-Bit Seri Giriş'i 8 Paralel Çıkış Kaydırmasına dönüştürmektir.

Tüm seri veriler Pin #14'e gider ve her saat sinyalinde bitler karşılık gelen paralel çıkış pinlerine (Qa'dan Qh'ye) gider.

Daha fazla veri göndermeye devam ederseniz, bitler tekrar seri çıkış olarak Pin #9'a (Qh') birer birer taşınır ve bu işlevsellik nedeniyle kademeli olarak bağlı başka bir çip koyabilirsiniz.

Önemli:

Bu projede 74HC595'lik üç IC'miz var. İlk ikisi sütunları kontrol etmek için çalışır (POZİTİF mantıkla) ve sonuncusu hatları kontrol etmek için çalışır (PNP transistörlerinin çalışması nedeniyle NEGATİF mantıkla).

Pozitif mantık, Arduino'dan YÜKSEK seviye bir sinyal (+5V) göndermeniz gerektiği anlamına gelir ve Negatif mantık, DÜŞÜK seviye bir sinyal (0V) göndermeniz gerektiği anlamına gelir.

LED'lerin nokta matrisi

  1. Birincisi Kırmızı LED'lerin (8 x) katotlarının çıkışları içindir >> KOLON KIRMIZI (1 ila 8).
  2. İkincisi, Yeşil LED'lerin (8 x) katotlarının çıkışıL içindir >> SÜTUN YEŞİL (1 ila 8).
  3. Sonuncusu, tüm LED'lerin (08 x Kırmızı ve Yeşil) anotlarının çıkışı içindir >> HATLAR (1 ila 8).

Örneğin, yalnızca sütun 1 ve satır 1'in Yeşil LED'ini açmak istiyorsanız, aşağıdaki seri veri dizisini göndermelisiniz:

1º) HATLAR

~10000000 (yalnızca ilk satır açık olarak ayarlanmıştır) - ~ sembolü, tüm bitleri 1'den 0'a veya tam tersi olarak tersine çevirmek içindir.

2º) KOLON Yeşil

10000000 (Yeşil LED'in yalnızca ilk sütunu açık olarak ayarlanmıştır)

3º) KOLON KIRMIZI

00000000 (Kırmızı LED'lerin tüm sütunları kapalı)

Arduino ifadeleri:

shiftOut(dataPin, clockPin, LSBFIRST, ~B10000000); // Çizgiler için negatif mantık

shiftOut(dataPin, clockPin, LSBFIRST, B10000000); //Yeşil sütunlar için pozitif mantık

shiftOut(dataPin, clockPin, LSBFIRST, B00000000); //Kırmızı sütunlar için pozitif mantık

Açıklama:

Ayrıca aşağıdaki gibi SARI rengi elde etmek için her iki LED'i (Yeşil ve Kırmızı) birleştirebilirsiniz:

shiftOut(dataPin, clockPin, LSBFIRST, ~B10000000);

shiftOut(dataPin, clockPin, LSBFIRST, B10000000);

shiftOut(dataPin, clockPin, LSBFIRST, B10000000);

7 Segment ekranı

Bu tür ekranlar için sıra aynıdır. Tek fark, Yeşil LED'leri kullanmanıza gerek olmamasıdır.

1º) DIGIT (1 - 4 soldan sağa) ~10000000 (basamak #1)

~01000000 (2. basamak ayarlayın)

~00100000 (basamak #3'ü ayarlayın)

~00010000 (rakam #4'ü ayarlayın)

2º) KULLANILMAMIŞTIR

00000000 (tüm bitler sıfıra ayarlandı)

3º) SEGMENTLER (A'dan F'ye ve DP - ekran veri sayfanızı kontrol edin)

10000000 (bölüm A'yı ayarlayın)

01000000 (bölüm B'yi ayarlayın)

00100000 (bölüm C'yi ayarlayın)

00010000 (d segmentini ayarlayın)

00001000 (bölüm E'yi ayarlayın)

00000100 (bölüm F'yi ayarlayın)

00000010 (bölüm G'yi ayarlayın)

00000001 (DP'yi ayarla)

Ekran #2'yi 3 numara ile ayarlamak için Arduino örneği:

shiftOut(dataPin, clockPin, LSBFIRST, ~B01000000); //EKRAN 2'yi ayarla (Negatif mantık)

shiftOut(dataPin, clockPin, LSBFIRST, 0); //Veriyi sıfıra ayarla (kullanılmıyor)

shiftOut(dataPin, clockPin, LSBFIRST, B11110010); //A, B, C, D, G segmentlerini ayarla)

Son olarak, bu işlemi uygulayarak ekranınızın herhangi bir LED'ini kontrol edebilir ve ayrıca ihtiyacınız olan özel karakterleri oluşturabilirsiniz.

Adım 5: Test Etme

Test yapmak
Test yapmak
Test yapmak
Test yapmak
Test yapmak
Test yapmak

Ekran Modülünün işlevselliğine örnek olarak iki program aşağıda verilmiştir.

1) Geri sayım ekranı (999,9 saniyeden sıfıra)

2) Nokta Vuruşlu (0'dan 9'a Rakamlar ve A'dan Z'ye Alfabe)

3) 4 Haneli ve 7 Segmentli LED Ekranda Dijital Saat RTC

Bu sonuncusu, Dijital Saat'in ilk sürümünün bir güncellemesidir.

6. Adım: Sonuç ve Sonraki Adımlar

Sonuç ve Sonraki Adımlar
Sonuç ve Sonraki Adımlar
Sonuç ve Sonraki Adımlar
Sonuç ve Sonraki Adımlar

Bu Modül, bir miktar LED ekran gerektiren gelecekteki tüm projelerde faydalı olacaktır.

Sonraki adımlar olarak, kademeli modda onlarla çalışmak için daha fazla pano oluşturacağım ve programlamayı daha da basitleştirmek için bir kitaplık da geliştireceğim.

Umarım bu projeden hoşlanmışsınızdır.

Lütfen bana yorumlarınızı gönderin çünkü bu, projeyi ve bu Eğitilebilir Tablonun bilgilerini geliştirmek için önemlidir.

Saygılarımızla, LAGSILVA

26. Mayıs.2016

Önerilen: