Teknikim

Üye Girişi

Önemli! Foruma yazılmayan sorulara cevap verilmeyecektir. Lütfen sorularınızı foruma yazın!
PIC ve PIC Assembly'ye Giriş
 

Yazan: Tuna BULUT, Tarih: 26-01-2008 11:39

Okunma Sayısı : 1218

Beğenilme : 17

Yayınlama yeri : Dersler, PIC Dersleri

Sayıların Yazım Şekli

0xXX, h'XX' veya 0XXh hexadecimal(16 lık taban) sayıların yazımında kullanılır.

b'XXXXXXXX' binary(2 lik taban) sayıların yazımında kullanılır.

d'XXX' decimal(10 luk taban) sayıların yazımında kullanılır.

Örnek:

0xCE           ;Hexadecimal sayı (CE)16

h'CC'            ;Hexadecimal sayı (CC)16

00Ch           ;Hexadecimal sayı (0C)16

b'00110011'  ;Binary sayı (00110011)2

d'255'           ;Decimal sayı 255

Bazı PIC Assembly Komutları

LIST: Hangi PIC'ın kullanıldığını belirtir.

                        LIST              P=16F628A            ;16F628A kullanılacağını belirt

#INCLUDE: PORTA, PORTB, STATUS, TRISA, TRISB gibi özel yazmaçların adreslerinin belirtildiği INC uzantılı dosyayı dahil eder.

           #INCLUDE     "P16F628A.INC"      ;P16F628A.INC dosyasını dahil et


EQU: Değişkenleri genel amaçlı adreslere atar.


degisken1        EQU               0x20                        ;degisken1 i 0x20 adresine ata
degisken2
        EQU               0x21                        ;degisken2 i 0x21 adresine ata

MOVLW(MOVe Literal to W): Bir sabiti W yazmacına yükler.

                      MOVLW         0xFF

MOVWF(MOVe W to F): W yazmacındaki değeri F yazmacına yükler.

                       MOVWF      PORTB

MOVF(MOVe F): F yazmacındaki değeri W veya F yazmacına yükler.

MOVF         REG, 0           ;REG değişkenindeki değeri W yazmacına yükler

MOVF         REG,1            ;REG değişkenindeki değeri gene REG değişkenine yükler

CLRF(CLeaR F): F yazmacının içeriğini siler

CLRF          REG

BSF(Bit Set F): F yazmacının istenilen bitini 1 yapar.

                        BSF             REG, 3          ;REG değişkeninin 3. bitini 1 yap

BCF(Bit Clear F): F yazmacının istenilen bitini 0 yapar.

            BCF             REG,7           ;REG değişkenini 7. bitini 0 yap

GOTO(GO TO adress): Belirtilen adrese gider ve programın akışı o adresten itibaren devam eder.

Dongu

                       GOTO          Dongu            ;Sonsuz döngü

CALL(CALL subroutine): Belirtilen alt rutine gider.

RETURN(RETURN from subroutine): Programın akışı alt rutinden ana rutine geri döner.

Dongu

          CALL            Rutin        ;Rutin alt programını çağır

          GOTO           Dongu
Rutin

          RETURN                       ;Çağrıldığın yere geri dön(GOTO Dongu komutundan devam eder)

BTFSC(Bit Test F Skip if Clear): F yazmacının istenilen bitini test eder 0 a eşitse bir sonraki komutu atlar (işleme almaz).

Dongu

          BTFSC    REG,2 ;REG değişkenin 2. bitini kontrol et 0 a eşitse sonraki komutu atla ve Sıfır etiketine git 

          GOTO     Dongu

          GOTO     Sıfır

BTFSS(Bit Test F Skip if Set): F yazmacının istenilen bitini test eder 1 e eşitse bir sonraki komutu atlar (işleme almaz).

Dongu

           BTFSS    REG,2 ;REG değişkenin 2. bitini kontrol et 1 e eşitse sonraki komutu atla ve Bir etiketine git

           GOTO     Dongu

           GOTO     Bir

DECF(DECrease F): F yazmacının değerini 1 azaltır.

                     DECF        REG

DECFSZ(DECrease F Skip if Zero): F yazmacının değerini bir azaltır 0 a eşitse sonraki komutu atlar(işleme almaz).

Dongu

                     DECFSZ    REG ;REG i 1 azalt 0 a eşitse bir sonraki komutu atla ve Sıfır etiketine git

                     GOTO       Dongu

                     GOTO       Sıfır

INCF(INCrease F): F yazmacındaki değeri 1 artırır.

         INCF         REG

INCFSZ(INCrease F Skip if Zero): F yazmacındaki değeri 1 artırır 0 a eşitse sonraki komutu atlar(işleme almaz)

Dongu

                    INCFSZ     REG ;REG i 1 artır 0 a eşitse bir sonraki komutu atla ve Sıfır etiketine git

                    GOTO       Dongu

                    GOTO       Sıfır

 

Diğer PIC Assembly komutlarına buradan ulaşabilirsiniz.



   
Beğenilme
E-mail olarak gönder
İlgili makaleler
Teknikim'e kaydet

Okuyucu yorumları  RSS feed Yorum
 

Ortalama Üye Değerlendirmesi

   (0 Oylama)

 


Yorumunuzu ekleyin
Sadece kayitli kullanicilar bir Makaleyi yorumlayabilir. Lütfen ücretsiz üye olun veya giriş yapın.

Gönderilen yeni yorum yok



mXcomment 1.0.8 © 2007-2009 - visualclinic.fr
License Creative Commons - Some rights reserved