7-Segment Ekran Sayıcı

Günümüzde Arduino veya Raspberry-Pi gibi mikro denetleyicileri ve gerekli rakamları görüntülemek için yazılımla ilgili küçük bir kod kullanarak birden fazla LED ekranda sayıları ve harfleri görüntülemek çok kolaydır. Ancak bazen projemizin veya dijital mantık devresinin bir parçası olarak iki veya daha fazla sayı veya rakam görüntülemek isteriz. Peki bunu mikroişlemci olmadan nasıl yapabiliriz?

7 segmentli ekranlar, temel olarak tek bir gösterge paketi içinde birbirine bağlı bir dizi ışık yayan diyottan oluştuğundan, sıfırdan dokuza kadar sayısal bilgileri görüntülemek için uygun bir yol sağlar. Her ışık yayan diyot (segment olarak adlandırılır) bir elektrik akımı kullanılarak aydınlatılır ve çeşitli segment kombinasyonlarını aydınlatarak, bazı segmentler “AÇIK” ve ışık yayarken diğerleri “KAPALI” olacak şekilde tutulur.

Işık Yayan Diyot hakkındaki öğreticimizde gördüğümüz gibi, LED’ler normal diyotlar gibidir, akımın yalnızca bir yönde akmasına izin verirler. İkisi arasındaki bu fark, bir LED’in içinden bir elektrik akımı geçtiğinde PN-bağlantısından ışık enerjisi yaymasıdır. Bu elektrolüminesans eylemi, LED’in Anot (A) terminali Katot (K) terminalinden yaklaşık 2 volt daha pozitif olduğunda meydana gelir. Bir LED bağlantısını aydınlatmak için gereken tipik besleme akımı yaklaşık 6mA ila 20mA arasındadır ve değeri genellikle LED ile seri olan bir akım sınırlama direnci kullanılarak kontrol edilir.

Bu nedenle, ekran LED segmentlerinden herhangi birini anot terminali kaynağa (pozitif) ve katot terminali toprağa (negatif) bakacak şekilde ileriye doğru bağlayarak, rastgele yanan bir dizi segment veya 0’dan bir ondalık sayı üretebiliriz.

Yedi Segment Ekran Nedir?

Adından da anlaşılacağı gibi, 7 segmentli bir ekran yedi segmentten oluşur, yani yedi ışık yayan diyot veya LED’den oluşur ve bunlar birlikte ekranda tam bir rakam oluşturmak için kullanılabilir.

Aslında, 7 segmentli ekranların çoğu sekiz dahili LED içerir, çünkü sekizincisi genellikle ekranın alt köşelerinden birinde ondalık nokta için kullanılır.

Bir LED segmenti ihtiyaca göre ayrı ayrı aydınlatılabilirken, her dahili LED’in bir terminali ortak bir noktaya veya düğüme bağlanır. Böylece, ekran için 14 bağlantı pinine sahip olmak yerine sadece sekiz (7 + 1) pinimiz olur.

Ekranda kullanılan tüm LED’lerin katot terminalleri birbirine bağlanırsa, ekrana Ortak Katot (CC) ekranı denir. Aynı şekilde, ekranda kullanılan LED’lerin tüm anot terminalleri birlikte bağlanırsa, ekrana Ortak Anot (CA) ekranı denir. Bu nedenle 7 segmentli bir ekran, Ortak Katot (CC) veya Ortak Anot (CA) tipi bir ekran olabilir.

Ortak Katot (CC) Konfigürasyonu

Ortak Katot (CC) Ekranı – LED segmentlerinin tüm katot (K) bağlantıları birbirine bağlanır ve toprağa veya sıfır volta bağlanır. Ayrı segmentler, ayrı Anot terminallerini (a’dan g’ye) iletmek için uygun bir elektrik akımının uygulanmasıyla aydınlatılır. Bu nedenle, ortak katot gösterimi, akım sağlayabilen bir sürüş devresi gerektirir.

Ortak Katot (CC) Konfigürasyonu

Ortak Anot (CA) Ekranı – LED segmentlerinin tüm anot (A) bağlantıları bir pozitif voltaj kaynağına birleştirilir. Bireysel segmentler, belirli segmentin (a ila g) Katot terminaline bir topraklama veya “DÜŞÜK” sinyali uygulanarak aydınlatılır. Bu nedenle, bir ortak anot gösterimi, bir akımı absorbe eden devre gerektirir.

Bir elektronik devreye birden fazla 7-segment LED ekranı bağlamanın birçok farklı yolu vardır ve her birinin kendi avantajları vardır. Her bir segment, normal parlaklıkta aydınlatmak için yaklaşık 6 ila 20 mili-amper (mA) akım gerektirdiğinden ve yedi segment (artı bir ondalık nokta) olduğundan, genellikle her bir ekranı doğrudan sürmek için özel kod çözücü/sürücü yongaları kullanılır. .

Entegre kod çözücü yongaları temel olarak bir tür girdi verisini başka bir türe dönüştürür ve girdi verisinin türüne (ikili, BCD veya onaltılı gibi) ve kodu çözülen verinin sayısını temsil eden gerekli çıktı koduna bağlı olarak farklı türde dijital kod çözücüler mevcuttur. çıkış hatları Örneğin: 3 ila 8 satır, 4 ila 16 satır vb.

Bizim durumumuzda, “BCD’den yedi segmente kod çözücü” gibi 7 segmentli bir ekranı çalıştırmak için bazı ikili kodları bir dizi çıkış sinyaline dönüştürebilen bir kod çözücü entegresine ihtiyacımız var. İkili Kodlu Ondalık veya kısaca BCD, 0’dan 9’a kadar olan 10 ondalık basamağı temsil etmek için kullanılan, aşağıdaki entegre kod çözücü yongaları listesiyle tam da bunu yapabilen bir 4-bit ikili basamak kümesidir.

TTL Kod Çözücü Entegreler
74LS47 Ortak Anot
74LS48 Ortak Katot
74LS247 Ortak Anot


CMOS Kod Çözücü Entegreler
74HC4511 Ortak Katot
CD4513 Ortak Katot

TTL 74LS47, açık ara en popüler 7-segment kod çözücü entegresidir ve ortak anot (CA) ekranlarını çalıştırabilir. TTL 74LS47, yedi LED segmentinin her birini sürmek için 4 bitlik bir BCD girişine ve yedi ayrı aktif “LOW” çıkışına sahiptir. Aktif “DÜŞÜK”, bir LED segmentini aydınlatmak için çıkış pininin toprağa (0V) geçtiği anlamına gelirken, “YÜKSEK” bir çıkış LED segmentini “KAPALI” hale getirecektir. HDSP serisi ekranlar iyi bir başlangıç noktasıdır ancak herhangi bir standart ortak anot ekranı işinizi görür.

Dört anahtarın yardımıyla, kullanılan a, b, c, d, e, f ve g çıkış sinyallerini üretmek için 74LS47 kod çözücünün A, B, C ve D BCD girişlerine 4 bitlik bir ikili sayı uygulanır.

74LS47 kod çözücü/sürücü ile ortak anot ekranı arasındaki bağlantı, akım akışını sınırlamak için yedi direnç (ondalık nokta dahilse sekiz) gerektirir. Ekranın her bir LED segmentinin düzgün şekilde yanması için, her segmentten geçen akımın dikkatli bir şekilde kontrol edilmesi gerekir. Akımı bir ekran segmenti üzerinden sınırlamanın en iyi yöntemi, gösterildiği gibi yedi LED segmentinin her biri ile seri halinde bir akım sınırlama direnci kullanmaktır. Seri bağlı bir direnç kullanmazsak, maksimum akım akacak ve LED kalıcı olarak tahrip olmadan önce kısa bir süre için çok parlak olacaktır.

Tipik bir 7 segmentli LED ekranın her bir LED segmenti, 6 ila 20mA arasında çalışacak şekilde derecelendirildiğinden, normal parlaklık için LED’in diyot bağlantısı boyunca yaklaşık 1.8 voltluk bir voltaj düşüşü sunar. LED segmenti başına gerekli akımı üretmek için gereken akım sınırlayıcı direncin değerini hesaplayabiliriz.

Umarım şimdiye kadar 7 segmentli bir ekranın temelde tek bir dikdörtgen paket içinde bir grup ayrı LED olduğunu ve LED’lerin segment başına DC akımlarını sınırlamak için bir seri direnç gerektirdiğini öğrendik ve anladık.

Ortak anotlu bir ekran için, her bir LED segmentinin anotları 5 voltluk bir kaynağa (VS) bağlanır. Yandığında LED’in bağlantısı boyunca ileri voltaj düşüşü yaklaşık 1.8 volt ise, seri direnç üzerindeki voltaj da eşit olmalıdır: VS – VLED = 5 – 1.8 = 3.2 volt.

Bu nedenle, tek bir segmentin seri akım sınırlama direnci için gereken direnç değeri, onu aydınlatmak için gereken akım akışında Ohm Yasası kullanılarak basitçe bulunur. Bu nedenle, LED’in akımını 6mA ile 20mA arasında sınırlamak için gereken direnç aralığını, istediğimiz uygulama ve LED yoğunluğu için aşağıdaki gibi hesaplayabiliriz:

Bu nedenle 6mA akımda 533Ω’luk bir seri akım sınırlama direnci veya tercih edilen en yakın değere 560Ω ve akımı 20mA ile sınırlamak için 160Ω’luk bir direnç gerekir. Gerçekte, 220Ω ve 360Ω arasındaki herhangi bir iyi standart tercih edilen direnç değeri, 5 voltluk bir beslemeden 7 segmentli bir ekranı aydınlatmak için kullanılabilir, bunların tümü, hangi direnç değerlerine sahip olduğunuza bağlıdır.

Burada örneğimiz olarak ortak bir anot LED ekran kullanıyor olsak da, ortak katot LED ekranlar için de aynı hesaplamalar ve direnç değerleri geçerlidir. Çift sıralı paket (DIP) direnç ağları, sürücü entegreleri ile ekran arasındaki kablolama işlemini basitleştiren tek bir DIP paketinde yedi (veya sekiz) direncin tümü ile yaygın olarak bulunur.

Ayrıca burada TTL 74LS47 BCD’yi 7-segment dekoder/sürücü IC’sini aktif DÜŞÜK (akım alıcı) çıkışları ile birlikte ortak bir anot ekranı sürmek için kullanmış olsak da, TTL 74LS48 BCD’den 7-segment kod çözücü/sürücü IC’ye tam olarak aktif YÜKSEK (akım kaynağı) çıkışlar ürettiği için ortak katot ekranını sürmek için tasarlanması dışında aynıdır. Bu nedenle, sahip olduğunuz 7 segmentli LED ekran tipine bağlı olarak, sürüş için bir 74LS47 IC’ye ihtiyacınız olabilir, örneğin bir LT542 CA ekranı veya eşdeğer LT543 CC ekranını sürmek için bir 74LS48 IC’ye ihtiyacınız olabilir. Seçim sizin.

7 Segment Ekranda Sayıları Görüntüleme

74LS47, BCD (8-4-2-1) A, B, C ve D basamakları için dört girişe ve yedi segmentli ekranın her bir segmenti için çıkışa sahiptir. Dört SA, SB, SC ve SD anahtarının çalıştırılması, ilgili numaranın görüntülenmesinden sorumlu olan uygun LED segmentlerini etkinleştirmek için gerekli giriş sırasını oluşturacaktır. Normal çalışma için, 74LS47’nin LT (Lamba testi), BI/RBO (Körleme Girişi/Dalgalanma Karartma Çıkışı) ve RBI (Dalgalanma Karartma Girişi) +5V kaynağına (YÜKSEK) bağlıdır. Böylece görüntülenen sayılar aşağıdaki gibidir:

Dört SPST anahtarının çalışması karşılık gelen sayıların veya rastgele karakterlerin görüntülenmesine neden olurken, dört anahtarı aynı anda çalıştırmak biraz sıkıcı olabilir. Bu nedenle, dört anahtarı kullanmadan 4 satırlı ikili bilgiyi üretebilen bir entegre çipimiz vardır: 74LS90 BCD.

Bir BCD çıkış kodu üretmek için MOD-10 onlu sayacı olarak yapılandırılabilen 74LS90 entegre devresi, 0000’den 1001’e kadar sayar ve ardından kendini tekrar 0000’a sıfırlar. Bu asenkron onlu sayıcı/bölücü kullanarak IC, gösterildiği gibi sadece tek bir anahtar kullanarak 7 segmentli ekrandaki rakamları artırabiliriz.

Tek Haneli 7-segment Ekran Sayacı

Artık ekrandaki sayıları 0’dan 9’a sadece bir buton anahtarına, SW1’e on kez basarak artırabiliriz. Basmalı düğmenin ve 1kΩ direncin konumunu değiştirerek, SW1 butonunun etkinleştirilmesinde veya serbest bırakılmasında değişiklik yaparak sayım yapabiliriz.

Basit devremiz, bir 74LS90 BCD Sayaç ve bir 74LS47 7-segment ekran sürücüsü kullanarak 0’dan 9’a kadar bir dijital sayıcıyı nasıl kullanacağımızı gösterir. Ancak bu tek basamaklı 0 ila 9 sayaç, iki basamaklı 00 ila 99 sayaç yapmak için ikinci bir sayaç aşamasının eklenmesiyle genişletilebilir.

Tek Haneli 7-segment Ekran Sayacı

Peki bu 2 haneli 7 segmentli ekran sayacı nasıl çalışıyor? Dijital sayaç devresinin ilk yarısı, SW1 butonunun etkinleştirilmesinin “birinin” (aynı zamanda “birimler” olarak da adlandırılır) LED ekranını artırması dışında öncekiyle aynı şekilde çalışır. İlk 74LS90 BCD sayacı olan U1, SW1’in her kapanmasında (son kenar) 0’dan 9’a (0000 ila 1001) yukarı doğru sayar. Ancak, kişinin ekranında sayma sırası “8” (1000)’e ulaştığında, U1’in “D” çıkışına karşılık gelen pin-11’i “YÜKSEK” olur ve U1 10. sayımda kendini sıfırlayana kadar YÜKSEK kalır. U1’in pin-11’i tekrar “DÜŞÜK” olur.

U1’in çıkış pin-11’i (BCD pin D), ikinci 74LS90 BCD sayacının U3 saat A (CLKA) giriş pin-14’üne bağlı olduğundan, U1’in pin-11’in (çıkış D) her biri ardışık YÜKSEK/DÜŞÜK anahtarlama eylemi onluk basamağı için ikinci LED göstergesini artırır. Böylece, yan yana yerleştirildiğinde iki LED ekranın bir sonraki sayım için tekrar 00’a dinlenmeden önce 00’dan 99’a kadar saymasına neden olur.

Bu çok basit sayısal sayma devresi birçok farklı okul projesi uygulamasına sahiptir. Örneğin, manuel olarak çalıştırılan buton anahtarını, SW1’i hareket eden nesneleri, insanları veya arabaları vb. saymak için bir sensörle değiştirebilirsek, hatta örneğin SW1’i bir 555 zamanlayıcı veya kararsız osilatör devresi ile değiştirebilirsek, bunun için kullanılabilir.

Yukarıdaki 2 haneli sayaç devresi 74LS90 onlu (on’a bölme) sayacıyla iyi çalışsa da sorun şu ki bunlardan iki tanesine ihtiyacımız var, U1 ve U3. TTL 74LS390 ve CMOS eşdeğeri 74HC390, tek bir entegre paketi içinde iki 74LS90 onluk sayacı içerir ve çoğu durumda iki 74LS90 satın almaktan daha uygun maliyetlidir.

TTL 74LS390 4-bit onlu sayacı, dahili olarak iki ikiye bölme ve beşe bölme sayacına sahiptir ve bunlar, BCD çıkışı ile aynı “2, 5 veya 10” katlarına bölme olarak yapılandırılabilir. Böylece, önceki devredeki iki 74LS90 entegrenin U1 ve U3’ünü tek bir 74LS390 entegresi ile değiştirebiliriz ve entegrenin her bir yarısı gösterildiği gibi LED ekranlardan birini çalıştırır.

Devre, bir 74LS390 BCD Sayacı ve iki 74LS47 7-segment ekran sürücüsü kullanan basit bir 00 ila 99 dijital sayacı gösterir. 99’un üzerinde saymak için birlikte daha fazla karşı devreyi basamaklandırmamız gerekir. 4 basamaklı bir BCD sayacı, 0000’dan 9999’a kadar ondalık olarak sayılır ve ardından tekrar 0000’a sıfırlanır. Benzer şekilde, 0’dan 999999’a kadar saymak istiyorsak, o zaman üç kademeli onlu sayaç gerekir. Aslında çoklu onlu sayaçlar, gösterildiği gibi her onluk için bir tane olmak üzere bireysel BCD sayaç devrelerini bir araya getirerek basitçe oluşturulabilir.

Basamaklı Sayıcılar

7-segment ekran sayıcı ile ilgili bu öğreticide, LED ekran dekoder devrelerinin standart kombinasyonel mantık devresi entegreleri kullanılarak oluşturulabileceğini ve piyasada bu işlevi gerçekleştirmek için birçok özel entegre devre olduğunu gördük.

74LS90 asenkron sayaç entegresi, bir BCD çıkış kodu üretmek için bir MOD-10 onlu (10’a bölme) sayacı olarak yapılandırılabilir, 0000’den 1001’e kadar sayar ve ardından döngüyü yeniden başlatmak için kendini tekrar 0000’a sıfırlar.

74LS90 BCD Sayıcı çok esnek bir sayma devresidir ve frekans bölücü olarak kullanılabilir veya tek bir ekran için 0’dan 9’a kadar herhangi bir tam sayıyı bölmek için kullanılabilir. İki 74LS90 sayacını birlikte basamaklandırmak, 2 basamaklı bir sayaç üretmemizi sağlar, ancak daha da iyisi, ikili onlu/sürücü entegresi 74LS390’ı kullanarak birden fazla 7 segmentli LED ekran kullanarak herhangi bir sayaç aşaması kombinasyonunu üretebiliriz.