PIC Assembly STATUS Register

Tanım;

  • Program akışını kontrol eden en önemli kaydedicidir.
  • STATUS kaydedicisi 3 parçaya ayrırak inceleyelim.


  1. Durum Gösterge Bit'leri ( Z, DC, C )
  2. İşlemci Durum Bit'leri ( IRP, TO', PD' )
  3. Bank Değiştirme Bit'leri ( RP0, RP1 )


STATUS REGİSTER

7. Bit6.Bit5. Bit4. Bit3. Bit2. Bit1. Bit0. Bit
IRPRP1RP0TO'PD'ZDCC

C ( Carry/borrow )

1 = Eğer çıkarma sonucu pozitifse ve toplama sonucunda taşma varsa

0 = Eğer çıkarma sonucu negatifse ve toplama sonucunda taşma yoksa

NOT : RLF ve RRF kaydırma komutlarında taşan bitler C bitine yazılır.

DC ( Digit carry/borrow )

1 = Eğer working registerinin 4. biti 1 olursa yani working register 15 üssü bir sayı olursa

0 = Working register 15 yada daha küçük bir sayı

Z ( Zero bit )

1 = Matematiksel işlem sonuçu 0 ise

0 = Matematiksel işlem sonuçu 0 değilse

PD' ( Power-down bit )

1 = PIC açıldıktan veya CLRWDT komutu kullandıktan sonraki durum

0 = SLEEP komutu kullandıktan sonraki durum

TO' ( Time-out bit )

1 = Açıldıktan sonra, CLRWDT komutu veya SLEEP komutu kullandıktan sonraki durum

0 = WDT zaman aşımı olduğundaki durum

RP1,RP0 ( Register Bank Select bits )

00 = Bank 0 (00h - 7Fh)

01 = Bank 1 (80h - FFh)

10 = Bank 2 (100h - 17Fh)

11 = Bank 3 (180h - 1FFh)

IRP ( Register Bank Select bit )

0 = Bank 0, 1 (00h - FFh)

1 = Bank 2, 3 (100h - 1FFh)

NOT = IRP biti dolaylı adresleme için kullanılır.

Girl Eating Pizza

PIC Assembly programlama dilinde, timer2 kullanarak PORB bağlı ledleri yakıp söndüren uygulaması yapılmıştır.

Girl Eating Pizza

RC2 ve RC1 pinlerinden elde edeceğiniz PWM sinyallerini kullanarak bir DC motorun hız ayarını ve bir led in ışık şiddetini değiştiren uuygulama yapılmıştır.

Girl Eating Pizza

16 LDCnin ilk satırında 0-200 arası 0.5 saniyede bir artarak sayan ve ikinci satırda başlangıç değeri 100 olan ve butonlarla arttırılıp azaltılan uygulama yapılmıştır.

Girl Eating Pizza

Joystick çalışma mantığına uyarak, ayarlı direnç ile joystick'in X yönündeki okuduğumuz analoğ değerini onluk tabanda ledlerde gösteren uygulamadır.

Girl Eating Pizza

Kendi yaptığımız pull-up tuş taşımı ( keypad ) ile tuş kontrolü yapan uygulaması yapılmıştır. Bastığımız tuşa karşıklık ikilik tabandaki karşılığını PORTC göstermektedir.

Girl Eating Pizza

Decoder ile 0-1000 arası sayıları artan bir şekilde led'de gösterme işlemini yapan uygulama yapılmıştır. PORB ve PORTD'nin bütün pinleri çıkış yapılmıştır.

Girl Eating Pizza

PORTBde soldan sağa, sağdan sola ledlerin yanıp sönmesini sağlayan uygulama yapılmıştır. PORTBnin bütün pinleri çıkış yapılmıştır.

Girl Eating Pizza

SWAPF komutunu kullanmadan SWAPlama işlemi yapan uygulama yapılmıştır.

Girl Eating Pizza

Deney seti üzerinde bulunan 2 adet ortak katotlu 7-segment display de dijital bir saatin saniye kısmını gerçekleştiren pic assembly uygulaması yapılmıştır.