P16F877A / PIC16F877A Mikroişlemci ile RB0 Kesmesi Örneği

P16F877A / PIC16F877A Mikroişlemci kullanılarak PortD deki 8 adet led binary olarak artarken PortB nin RB0 ucundan gelen kesme ile PortC deki ledi yakan assembly dili ile yazılmış uygulama. Kesmeden sonra ise program normal akışına devam etmektedir.

P16F877A / PIC16F877A Mikroişlemci ile Timer0 Örneği

Timer0 kullanılarak prescaler oranı 1/4 olan ve clock frekansı 4 MHz olan P16F877A / PIC16F877A mikroişlemci ile assembly dili ile yazılmış PortB ye bağlı olan ledi belli aralıklarla yakıp söndüren uygulama örneği

PIC16F877A Mikroişlemci İle 7 Segment 4 Digitli Display Kullanılarak 0 ile 9999 Arası Sayıcı (Assembly)

P16F877A / PIC16F877A mikroişlemci kullanılarak Assembly dili ile yazılmış PortD ye bağlı olan 7 segment display , seçme uçlarının ise PortA dan kontrol edildiği 0 ile 9999 arası sayıları timer0 kullanılarak 7 segment 4 digitli displaye yazdırma uygulaması.

Timer0 ile Kesme Oluşturup Led Yakmak

Tmr0 Kesmesini kullanarak 125 Mili saniye ... 16 Saniye Arasında kesme oluşturabileceğimiz kod örneği. kod içerisinde yaptığım açıklamaları ve yönlendirmeleri dikkate alarak option_reg üzerinden yapacağınız değişikliklerle 125 mili saniye 250 mili saniye ... 1 saniye 2 saniye... 16 saniye gibi farklı değerlerde kesmeler üretip bağlı led üzerinde değişiklikleri gözlemleye bileceksiniz.

7 Segment te 1 Saniye ve 0,4 Saniye Aralıklarla Sayan Sayaç

2x7 segment üzerinde 4mhz osilator hızında kullandığım tek Tmr0 kesmesi ve ortak gecikme hesabıyla 1 saniye ve 0.4 saniye aralıklarla sayan Tmr0 örneği. Tmr0 hesaplaması ve konfigürasyon ayarlarını da kod içerisinde detaylı olarak açıklamaya çalıştım.

Timer1 Gecikmesini Kullanarak Farklı Değerlerde Kesmeler Oluşturmak

Tmr1 Gecikmesini kullanarak kesme içerisine girdiğimizde kullandığımız döngümüz ve Tmr1 in 16 bitlik scala sının verdiği imkanla Tmr0 dan çok daha esnek çalışabilme imkanını buluyoruz. çok küçük değerleri de (Nano Saniye Mikro Saniye) çok büyük değerleri de (Mili Saniye Saniye Dakika) hesaplama imkanımız oluyor. kod içerisinde yaptığım açıklamalar ve Tmr1 hesaplaması sayesinde istediğiniz değerleri hesaplaya bileceksiniz. 500 Nano Saniye ... 67 Saniye Arasındaki Değerleri hesaplamak için 8Mhz kristal ile çalışmanızı tavsiye ederim