PIC Komutları 1: Assembly (ASM) Komutlarının Detaylı Anlatımı

guclusat

Tanınmış Üye
Süper Moderatör
PIC mikrodenetleyicilerde kullanılan Assembly (ASM) komutları, donanımı doğrudan kontrol etmemizi sağlar. Bu bölümde, temel komutların ötesine geçerek daha detaylı ve pratik kullanım senaryolarını inceleyeceğiz.

PIC Komut Seti Hakkında Kısa Bilgi​

PIC mikrodenetleyiciler RISC mimarisi kullanır ve sınırlı sayıda komut ile yüksek verimlilik sağlar. Bu sayede öğrenmesi kolay ve hızlıdır.

Gelişmiş PIC Komut Grupları​

1. Veri İşleme Komutları​

  • INCF f,d → Register değerini 1 artırır
  • DECF f,d → Register değerini 1 azaltır
  • CLRF f → Register’ı sıfırlar
  • SWAPF f,d → Register içindeki nibbleri yer değiştirir

2. Bit Seviyesi Komutlar​

  • BSF f,b → Belirtilen biti 1 yapar
  • BCF f,b → Belirtilen biti 0 yapar
  • BTFSC f,b → Bit 0 ise sonraki komutu atlar
  • BTFSS f,b → Bit 1 ise sonraki komutu atlar

3. Karar ve Atlama Komutları​

  • DECFSZ f,d → 1 azaltır, sonuç 0 ise sonraki komutu atlar
  • INCFSZ f,d → 1 artırır, sonuç 0 ise sonraki komutu atlar
  • GOTO label → Belirtilen adrese gider
  • CALL label → Alt programa gider

4. Mantıksal İşlemler​

  • ANDLW k → W ile sabiti AND yapar
  • IORLW k → W ile sabiti OR yapar
  • XORLW k → W ile sabiti XOR yapar

Örnek Kullanım​


MOVLW 0x05
MOVWF SAYAC

DONGU:
DECFSZ SAYAC,1
GOTO DONGU

Bu kod, SAYAC değeri sıfırlanana kadar döngü oluşturur.

Önemli Register’lar​

  • W (Working Register) → Ana işlem register’ı
  • STATUS → Sonuç bayraklarını tutar
  • PORTA / PORTB → Giriş / çıkış pinleri

Dikkat Edilmesi Gerekenler​

  • Bank switching (RP0, RP1 bitleri) unutulmamalı
  • Delay döngülerinde komut süreleri hesaplanmalı
  • Stack taşması (CALL kullanımı) kontrol edilmeli

Sonuç​

PIC Assembly komutlarını iyi öğrenmek, mikrodenetleyici programlamada büyük avantaj sağlar. Özellikle zamanlama hassasiyeti gereken projelerde ASM kullanımı çok önemlidir.
 
Son düzenleme:
Geri
Yukarı