2.9- MicroPython ile 7 Segman Gösterge Uygulaması
7 segman göstergeler 7 adet LED’in bir rakamı temsil etmek için bir araya koyulduğu ve dijital olarak kontrol edilebilen elemanlardır. 7 segman gösterge konsepti LED’lerin buluşundan bile önceye dayanmakta ve bir dönemler VFD (Vacuum Florecent Display) ile yapılmaktaydı.[6] En azından 50 yıldır yaygın olarak kullanılan bir teknoloji günümüzde de eskiden olduğu kadar olmasa da yaygın bir kullanım alanına sahiptir. Yüksek görünürlüğe sahip ola n LED göstergeler sayısal ifadeleri yazmak ve uzaktan göstermek amacıyla ucuz ve etkili bir yöntemdir. Biz uygulamada ortak katot tekli bir gösterge kullanacağız. Bu göstergenin ayaklarını öğrenmek için bir diyagramı inceleyelim.
Bizim rakamları göstermemiz için belli başlı ayakları yakmamız gerekli. Bunun için sırayla hangi ayakları yakacağımızı buluyoruz ve aynı zamanda bunların onaltılık karşılığını programda kullanmak için aşağıdaki hesap makinesiyle hesaplıyoruz.
https://www.rapidtables.com/convert/number/binary-to-hex.html
Buradan edindiğimiz bilgiyle şöyle bir tablo oluşturalım.
Devremizde 7-segman ve ESP32 bağlantıları şu şekilde olacaktır.
Devre şeması ise şu şekildedir.
Daha önce yaptığımız bargraf uygulamasında 0–8 arası değerler LED’ler üzerinde gösterilmekteydi. Burada bir adet daha az ayak kullanmamıza karşın 0–9 arası değerleri göstermekteyiz. Eğer çoklu gösterge kullansaydık çoklama (multiplexing) yöntemi ile ilave birkaç bacakla 0–999 ya da 0–9999 arası değerleri gösterme imkanımız olacaktı. Yine de bu uygulama için fazlaca bacak ve işlem gücü gerektiğinden piyasada uzun yıllardan beri olan sürücü entegreleri kullanabiliriz. Daha güncel bir yaklaşımla SPI ya da I2C üzerinden kontrol edilen çoklayıcılar ya da gösterge sürücülerini kullanabiliriz. Yine de bu uygulama port kullanımını öğrenmek ve ikili sayı sisteminin önemini anlamak için size faydalı olacaktır.
Biz elde ettiğimiz 1 ve 0 değerlerini hesap makinesinde onaltılık değere çevirip programa böyle yazdık. Bunun sebebi 0 ve 1’leri yazmanın çok pratik olmamasından dolayıdır. İstersek 0b1111111 şeklinde her bir göstergenin değerini yazabilsek de tecrübeli gömülü sistem geliştiricileri ikilik ve onaltılık dönüşüm tablosunu ezbere bilirler ve bunu kolayca programlara uygulayabilirler. Bu kadar pratiği gelişmemiş olanların ise hesap makinesi kullanması veya tabloya bakarak dönüşümü yapması gerekir. Gömülü yazılımda sabitlerin ikilik notasyonda yazılması acemice kabul edilen bir yaklaşımdır. Bunun için Windows’un hesap makinesinde programcılar için gerekli olan işleri yapacağımız özellikler bulunmaktadır.
Bu uygulama deney tahtası üzerinde çok bir anlam ifade etmese de bunu bir bataryanın doluluk oranını göstermek için kullanacağımız gibi herhangi bir algılayıcının değerini sayısal değer olarak göstermek için de kullanabiliriz. Örneğin bir deponun doluluk oranını şamandıradan gelen analog sinyalleri değerlendirerek panel üzerinde gösterebiliriz.