İki şema ekranın iki versiyonu, üstte ortak katot, altta ortak anot. Ortak katot versiyonuna sahip olduğunuzu varsayacağım.
A.G, DP segmentlerini 8 seri direnç üzerinden mikrodenetleyicinin 8 I / O pinine bağlarsınız. Bir raptiyeyi yükselttiğinizde, seçilen basamaktaki LED yanar. 4 basamaktan herhangi birini seçmek için, bir I / O pininden bir direnç yoluyla tekrar sürdüğünüz bir NPN transistörü aracılığıyla ilgili ortak katodu alçak yaparsınız.
Besleme voltajınız 5 V ise ve kırmızı LED kullanıyorsanız, 330 yerine 150 Ω direnç kullanabilirsiniz. Ayrıca, transistörün temel direnç değerlerini 2,2 kΩ değerine düşürün ve örneğin transistörler için BC337 s kullanın .
Tam ekranı sürmek için ilk önce transistörünü yüksek bir seviyede sürerek pimi 12 alçaltır ve bu rakamın segmentleri için I / O'ları ayarlarsınız. Bir süre sonra pim 12'yi ve segmentleri kapatır ve 9'u ve tekrar ikinci basamak için segmentleri açarsınız. Ve bunun gibi. 1 ms'den diğerine 2,5 ms'den daha az bir sürede giderseniz, tüm ekran 10 ms veya 100 Hz'de değişir, bu da gözle görülür titreşimden kaçınmak için yeterlidir.
Maxim sürücüsünü MAX7219 gibi kullanabilirsiniz , ancak bu Damn Expensive ™: Digikey'de 1 saniyede 12.80 dolar. Bu konuda iyi olan şey, sizin için çoklama ile ilgilenmesidir, bu yüzden sadece 4 basamak için segment verileri ile yüklemeniz gerekir. Ayrıca yazılım parlaklık kontrolü vardır.
PIC16F690 veri sayfasını kontrol ettim ve diğer mikrodenetleyicilerin aksine G / Ç'leri 20 mA (hayal kırıklığı yaratan) kaynak sağlayamıyor gibi görünüyor. Yani bağlantı noktası 2'de de transistörlere ihtiyacınız olacak:
R1, bağlantı noktası 2'deki dirençlerden biriydi. Bu nedenle, aralarına Q1 ve R2 yerleştirirsiniz ve bunu 8 segmentin her biri için tekrarlarsınız. Dikkat, Q2 bir PNP! Herhangi bir genel amaçlı PNP transistör yapacaktır.