Bu içerik, Atmega8 74HC595 zincirleme bağlama yani yalnızca 3 kontrol hattı ile 16 LED’i nasıl kontrol edeceğinizi gösterir. Bunu, 74HC595 kaydırma yazmaçlarını(shift register) zincirleme yaparak yapıyoruz. Daha önce 74HC595 kullanım hakkında oluşturduğumuz içeriğimize bakmanızı öneririz.
74HC595 kaydırma yazmacı, 8 bitlik bir depolama kaydına ve bir 8 bit kaydırma kaydına sahiptir. Veriler, kaydırma kaydına(shift) seri olarak yazılır, ardından depolama(storage) kaydına kilitlenir. Depolama kaydı daha sonra 8 çıktı satırını kontrol eder. Ayrıca buradan 74HC595 entegersinin veri sayfasına bakabilirsiniz.
Aşağıdaki şekil 74HC595 pin çıkışını göstermektedir.

Pin 14 (DS) Veri pinidir. Bazı veri sayfalarında “SER” olarak anılır.
Pin 11 (bazı veri sayfalarında SH_CP veya SRCLK) Düşük’ten Yüksek’e gittiğinde, DS’nin değeri kaydırma yazmacında saklanır ve yeni bit için yer açmak için kaydın mevcut değerleri kaydırılır.
Pin 12 (bazı veri sayfalarında ST_CP veya RCLK), veriler kaydırma yazmacına yazılırken düşük tutulur. Yüksek olduğunda, kaydırma yazmacının değerleri depolama kaydına takılır ve bunlar daha sonra Q0-Q7 pinlerine gönderilir.
Aşağıdaki zamanlama şeması, 00000000 başlangıç değerlerini varsayarak Q0-Q7 çıkış pinlerini 11000011’e nasıl ayarlayacağınızı gösterir.

Devre Şeması

Tek 74HC595’i 8 farklı LED ile kullanmak için bu kodu kullanabilirsiniz, devreyi kurup kodu Atmega8’e yüklediğinizde “knight rider” yani kara şimşek devresi elde edeceksiniz.

Ayrıca buradan Arduino ile yaptığımız kara şimşek devresine göz atabilirsiniz.
Tek 74HC595 Kullanan Atmega8 Kodu
Şuana kadar yaptığımız etkileyici ama 16 LED’i kontrol ettiğimizi söylememiş miydik? Bunu yapmak için başka bir 74HC595 kaydırma yazmacı, daha fazla LED, daha fazla direnç ve daha fazla kablo eklememiz gerekiyor.
Kaydırma yazmaçlarını birbirine zincirlemek için Q7′ pinini kullanıyoruz.
Değiştirilen devre aşağıda gösterilmiştir.

Devre şemasına eklemeyi yaptıktan sonra breadboard üzerinde de değişiklikleri yapalım:

İki 74HC595 Kullanan Atmega8 Kodu
Az önce 16 LED’i çalıştırarak hedefimize ulaştık, ancak daha fazla shift register zincirlemeye devam edebiliriz. Bu teknik elbette sadece LED’lerle sınırlı değildir ve diğer birçok türde cihazı çalıştırmak için çıkış portlarını çoğaltmak için kullanabiliriz.
Bu teknikle ilgili bir uyarı. Devreyi açtığınızda, çıkış hatları rastgele bir değere ayarlanır. Bunları istediğiniz değerlere ayarlamak bir mikrosaniyeden daha kısa sürüyor, ancak bu bazı devreler için sorunlara neden olabilir. Bu durumda depolama kayıtlarını sıfırlamak için MR ve OE pinlerini kullanabilirsiniz.
Yorum yapma özelliği, forum tarafından gelen istek sebebiyle kapatılmıştır. Lütfen tartışmalar ve sorularınız için topluluk forumumuza katılın.
