PIC16F874P ile Alfanümerik 15 Segment LED Display Sürücü

| Mayıs 18, 2023 Tarihinde güncellendi
PIC16F874P ile Alfanümerik 15 Segment LED Display Sürücü

Alfanümerik led display sürücü devresi pic16f874p mikrodenetleyici ile bred bord üzerine kurularak uygulanmış led display 74HC238, 74HC238 ile sürülüyor ayrıca max233 ile com bağlantısı var ek olarak pcb baskı devre çizimide (eagle) var. PIC Yazılımı HiTech PICC derleyicisi ile yazılmış ek olarak PALCE16V8 VHDL kaynak kodları var. Sisis beslemesinde LM2940 regülatör var. Devreyi 9v pil ile çalıştırabilirsiniz.

PCBway Türkiye PCB Manufacturer PCB Assembly

Alfanümerik Ekran Sürücüsü 15 segmentli LED ekranları arayüzlemek için programlanmış bir PIC mikrodenetleyici tarafından sürülür. Bu, bir mesajı kaydıran ekranın 5 MB’lık bir videosudur. Eğlenmek için Digikey’de bazı LED ekranlar satın aldım ama kısa süre sonra bunları kullanmak için bir sürücü çipine ihtiyacım olacağını fark ettim. Maxim, matris ekranlar ve 7 segmentli ekranlar için pek çok güzel sürücü sunar, ancak rastgele bir ekran için özel bir sürücüye ihtiyacınız varsa (satın aldığım 15 segmentli ekranlar gibi), kendinizinkini tasarlamanız gerekebilir. Zor değil ve burada kesintiler kullanarak PIC serisi mikrodenetleyicilerle çalışmak için bazı kodlar bulabilirsiniz.

PIC tabanlı ekran sürücüsü kullanılarak tamamlanmış ekran modülü. Ekranda ‘HIZLI KAHVERENGİ TİLKİ TEMBEL KÖPEK ÜZERİNDEN ATLADI’ mesajı görüntüleniyor.

PCB üzerindeki tasarımı gerçekleştirmeden önce, yeterince parlak olduğundan emin olmak için bir devre tahtası üzerinde bir araya getirdim. Ekranlar çoğullandığından, ortalama olarak yeterince parlak görünmeleri için her basamağa (açık oldukları sürenin %12’si için) yeterli akım sağlamam gerekiyor. Ekranların yalnızca ekranların ortak katotları için transistörler kullanılarak okunabilir olduğunu buldum, bu da 15 transistörü kurtarıyor. Aşağıdaki şematik ve pano dosyalarını görüntülemek için EAGLE’ı kullanabilirsiniz:

alfanumerik-segment-led-display

Kullandığım 15 segmentli ekranlar için DigiKey parça numaraları yeşil karakterler için 160-1012-ND ve kırmızı/turuncu için 160-1010-ND’dir. Veri sayfasını pdf formatında buradan indirebilirsiniz.

Yukarıdaki resimde ekran, tüm karakterleri test etmek için “*** HIZLI KAHVERENGİ TİLKİ TEMBEL KÖPEK ÜZERİNDEN 1234567890 KEZ ATLAR” şeklinde kayıyor. PIC16F77 by Microchip kullanıyorum çünkü çok fazla çıkış pini var (bir LED sürücüsü için mükemmel). Bir PIC16F877A da kullanabilirsiniz, çünkü istediğiniz tüm özelliklere sahiptir ve ücretsiz HiTech PICC derleyicisi tarafından desteklenir. Görüntü işleme, mikrodenetleyicilerin mevcut işlemesinin çok azını kaplar ve kesme rutininden çalışır, böylece programlayıcı için şeffaftır. Aşağıda, karakterlerin nasıl görünmesi gerektiğini hayal ettiğimin bir taslağı var:

Rakamlar çoğullanır ve yaklaşık 75 Hz’de yenilenir. RS232 ile mesajı güncellemeye izin vereceğim için breadboard üzerine bir MAX202 seviye değiştirici yerleştirmiştim ama kodda bunu henüz yapmadım. Diğer destek yongası, 74’238 ile aynı işleve sahip 3 ila 8 aktif yüksek kod çözücüdür. Aktif düşük versiyonu (74’138) bulmak kolay, ancak aktif yüksek değil, bu yüzden bir PALCE16V8 için VHDL’de bir tane kodladım.

“Bu kadar çok çıktı varken neden ayrı bir dekoder çipi ile uğraşalım?” diye sorabilirsiniz. Pekala, değerli mikrodenetleyici çıktılarını başka şeyler için saklar ve birçok ekranı çoğaltmanıza izin verir. Ekran sayısını 16’ya çıkarmak, mikrodenetleyiciden yalnızca bir ek çıkış hattı gerektirir. Yine de daha büyük bir PAL’ye (veya CPLD’ye) ihtiyacınız olacak.

Devreye gelince, büyütülmüş resimden rakamları mikrodenetleyiciye çoğalttığım oldukça açık olmalı. Değilse, nasıl yapıldığını görmek için internetteki bazı sitelere bakın. 8 transistör 2N3904’tür ancak zemini ekranlara geçirmek için herhangi bir NPN transistörü kullanabilirsiniz. Zemini doğrudan bir mikrodenetleyiciye veya (aktif düşük) 74’138’e bağlamaya çalışırsanız, ekranlarınızın çok loş olduğunu göreceksiniz. Bunun nedeni, bu çıkışların yalnızca maksimum 25 ila 50 mA’ya düşebilmesi ve bu da size segment başına yalnızca yaklaşık 3 mA bırakmasıdır. Bunu 8’e bölün (çünkü her biri zamanın yalnızca 1/8’indedir) ve neden sönük olduklarını görebilirsiniz. Transistörler 100 ila 200 mA arasında kolayca geçiş yapabilir, böylece parlaklık kabul edilebilir düzeydedir. İdeal olarak (burada olmayacak), toplam sürenin yalnızca bir kısmını oluşturdukları için segment başına yaklaşık 40 mA’lık bir tepe akımı istersiniz. Bazı ekranlar ortak anottur ve bunun yerine VCC’ye 2N3906 PNP transistörleri kullanacaksınız. Bu arada, bu 5 voltta çalışıyor ama kullandığınız saate bağlı olarak daha düşük voltajlarda da çalışabilir.

Alphanumeric Display Driver

The display pictured below is driven by a PIC microcontroller programmed to interface 15 segment LED displays.

LED displays on Digikey for fun but soon realized I’d need a driver chip to make use of them. Maxim offers many nice drivers for matrix displays and 7 segment displays, but if you need a custom driver for a random display (such as the 15 segment displays I bought) you may have to design your own. It’s not difficult, and here you can find some code to work with the PIC series microcontrollers using interrupts.

Kaynak: burada

pic16f874p-ile-15-segment-led-display-surucu

Şifre-Pass: 320volt.com

Yayım tarihi: 2008/07/31 Etiketler: , , , , , ,



Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir