Pic Assembler (asm) Yazılım Kodları

Asm1

Yer Değiştirme veya Yükleme Komutları
MOVLW k
k Sabit değerini w registerine yükler.
MOVF f,d
f registerinin içeriğini W veya f'e yükler.
MOVWF f
W registerinin içeriğini f registerine yükler.
Register İçeriğini Değiştirme Komutları
CLRF f
f registerinin içeriğini siler.
CLRW
w registerinin içeriğini siler.
COMF f,d
f registerinin içindeki sayı terlenir. 1'ler 0 , 0 'lar 1 olur.
DECF f,d
f registerinin içindeki sayıyı 1 eksiltir. h'00' ise h'FF' olur
INCF f,d
f registerinin içerisindeki sayıyı 1 arttırır. h'00' ise h'01' olur.
BCF f,b
f registerinin içerisindeki sayının b.ninci bitini sıfırlar.
BSF f,b
f registerinin içerisindeki sayının b.ninci bitini 1 yapar.
RLF f,d
f registeri içerisindeki sayıyı bir pozisyon sağa kaydırır.
RRF f,d
f registeri içerisindeki sayıyı bir pozisyon sola kaydırır.
SWAPF f,d
f registerinin içerisindeki ilk 4 bit ile son 4 bit yer değiştirir.
Program Akışnı Kontrol Etme Komutları
GOTO
program akışını belirlediğimiz adrese dallandırır.
CALL k
program akışını k etiketinin bulunduğu yerdeki alt programa dallandırır.
RETURN
En alta yazılan bu komut ana programa döndürmeye yarar.
RETLW
program akışının alt programdan ana programa döndürür ve W registerine k sabitini yükler.
RETFIE
program akışını interrupt alt programından ana programa döndürür.
BTFSC f,b
f registerinin b.inci bitini test eder.0 ise program akışı bir sonraki komuta geçer.
BTFSS f,b
f registerinin b.inci bitini test eder.1 ise program akışı bir sonraki komuta geçer.
DECFSZ f,d
f registerinin içeriği "1" azaltır.register içerigi 0'sa bir sonraki komuta atlar.
INCFSZ f,d
f registerinin içeriğini "1" arttırır. register içerigi 0'sa bir sonraki komuta atlar.
Mikrodenetleyici Kontrıl Komutları
CLRWDT
watchdog timer'ı sıfırlar. Ayrıca watchdog timer'ın prescalar değerinide 0 lar.Status bitlerinden TO ve PD=1 yapar
SLEEP
Mikrodenetleyiciyi uyuma moduna geçirir.
Mantıksal Komutlar
ANDLW k
w registerinin içeriği ile k sabitine AND işlemi uygular sonuç w registerine yazılır.
ANDWF f,d
w registeri ile file register içeriğine AND işlemi uygulanır sonuç w veya f registerine yazılır.
IORLW k
w registerin içeriği ile k sabitine OR işlemini uygular.Sonuç w registerine yazılır.
IORWF f,d
w registeri içeriği ile file registerinin içeriğine OR işlemi uygular sonuç w veya f registerine yazılır.
XORLW k
w registeri içeriği ile k sabitine XOR işlemini uygular.sonuç w regiseterine yazılır.
XORWF f,d
w registeri içeriği ile file registerinin içeriğine XOR işlemi uygular sonuç w veya f registerine yazılır.
Aritmetik İşlem Komutları
ADDWF f,d
w registerinin içeriğine f registeri ile toplar. Sonuç w veya f registerine yazılır.
ADDLW k
w registerinin içeriğine k sabit değeri ile toplar. Sonuç W registerine yazılır.
SUBLW k
k sabit değerinden W registeri içerigini çıkarır. Sonuç W registerine yazılır.
SUBWF f,d
f registerinin içeriğinden W registeri içerigini çıkarır. Sonuç W registerine yazılır.
İşlem Yapmayan Komut
NOP
Bir komut saykılı süresince hiçbir işlem yapmayan bir komuttur. Bir dahili komut süresinde çalışır.Bu nedenle zaman geçiktirme işlemlerinde kullanılır.

 

 

İlk yorum yapan olun

Bir yanıt bırakın

E-posta hesabınız yayımlanmayacak.


*