Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
1
DERS 6 PIC 16F84 PROGRAMLAMA
2
İÇERİK PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı
Program belleği RAM bellek Değişken kullanımı Komutlar
3
KOMUTLAR Programlamada iki önemli kavramdan bir diğeri ise verilerin işlenmesini sağlayan komutlardır. Bunlar sınıflandırılacak olursa; Aritmetik ve Atama işlem komutları Yükleme İşlemi: Değişken (register) değerini belirleme (=) Aritmetik İşlem: Toplama, Çıkarma Mantıksal İşlem: AND, OR, XOR İçerik Değiştirme İşlemi: Değişken değerini değiştirme içerik temizle, arttır, azalt, eşlenik al Bit İşlemleri: Değişken bitini 0 veya 1 yap Kaydırma İşlemleri: Değişken bitlerini sağa veya sola kaydır Karar verme işlem komutları Koşullu Dallanma: Değişken sıfır–herhangi biti 0/1 ise dallan Diğer işlem komutları Program Akış Komutları: Dallanma Mikrodenetleyici Kontrol Komutları
4
KOMUTLAR Dersin bu bölümünde I. Aritmetik Atama ve İşlem Komutların ne şekilde kullanıldıklarını sırayla inceleyelim…
5
KOMUTLAR (yükleme işlemi)
Değişken (register) değerini belirleme (= işlemi) 0x00 MOVWF W MOVLW sabit 0x4E MOVF 0x4F
6
KOMUTLAR (yükleme işlemi)
Değişken (register) değerini belirleme (= işlemi) MOVLW k : k W MOVWF f : W f MOVF f , d : f d veya d=0 ise f W d=1 ise f f
7
KOMUTLAR (aritmetik işlem)
Toplama, Çıkarma 0x00 W sabit ADDLW, SUBLW sabit ile W topla/çıkar Sonucu W akü.’ne gönder 0x4E ADDWF, SUBWF Register ile W topla/çıkar Sonucu herhangi birisine gönder 0x4F
8
KOMUTLAR (aritmetik işlem)
Toplama, Çıkarma ADDLW k : k + W W SUBLW k : k – W W ADDWF f , d : f + W d veya d=0 ise f + W W d=1 ise f + W f SUBWF f , d : f – W d veya d=0 ise f - W W d=1 ise f - W f
9
KOMUTLAR (mantıksal işlem)
AND, OR, XOR 0x00 ANDLW IORLW XORLW sabit ve W için and, or, xor hesapla Sonucu W akü.’ne gönder W sabit 0x4E ANDWF, IORWF, XORWF Register ile W and, or, xor hesapla Sonucu herhangi birisine gönder 0x4F
10
KOMUTLAR (mantıksal işlem)
AND, OR, XOR ANDLW k : W and k W IORLW k : W or k W XORLW k : W xor k W ANDWF f , d :f and W d veya d=0 ise f and W W d=1 ise f and W f IORWF f , d : f or W d veya d=0 ise f or W W d=1 ise f or W f XORWF f , d : f xor W d veya d=0 ise f xor W W d=1 ise f xor W f
11
KOMUTLAR (içerik değiştirme işlemi)
Değişken içeriğini temizle, arttır, azalt, eşlenik al 0x00 CLRW W W 0x4E CLRF: register COMF: register register DECF: register register-1 INCF: register register+1 0x4F
12
KOMUTLAR (içerik değiştirme işlemi)
Değişken içeriğini temizle, arttır, azalt, eşlenik al CLRW : W CLRF f : f COMF f , d : f d veya d=0 ise f W d=1 ise f f DECF f , d : (f) - 1 d veya d=0 ise (f) - 1 W d=1 ise (f) - 1 f INCF f , d : (f) + 1 d veya d=0 ise (f) + 1 W d=1 ise (f) + 1 f
13
KOMUTLAR (bit işlemleri)
Register’ın herhangi bitini 0 veya 1 yap 0x00 0x4E BCF: register istenilen bit0 BSF: register istenilen bit1 0x4F
14
KOMUTLAR (bit işlemleri)
Register’ın herhangi bitini 0 veya 1 yap BCF f , b : (f ’ nin b. biti) 0 BSF f , b : (f ’ nin b. biti) 1
15
KOMUTLAR (bit işlemleri)
Register ve carry bitlerini (toplam 8+1) sanki bir çember üzerinde sıralılarmışçasına sağa/sola döndür 0x00 MSB LSB Carry y a ş a s ı n F B B y a ş a s ı n F RRF: file register’ın 8 biti ve carry biti bir çember üzerindeler gibi SAĞA döndürülür MSB LSB Carry 0x4E y a ş a s ı n F B a ş a s ı n F B y 0x4F RLF: file register’ın 8 biti ve carry biti bir çember üzerindeler gibi SOLA döndürülür
16
KOMUTLAR (bit işlemleri)
Register ve carry bitlerini (toplam 8+1) sanki bir çember üzerinde sıralılarmışçasına sağa/sola döndür RRF f , d : d=0 ise sağa döndür (f ’in 8 biti + carry) W veya d=1 ise sağa döndür (f ’in 8 biti + carry) f RLF f , d : d=0 ise sola döndür (carry + f ’in 8 biti) W veya d=1 ise sola döndür (carry + f ’in 8 biti) f
17
KOMUTLAR (bit işlemleri)
Register içerisindeki ilk 4 bit ile son 4 bit yer değiştirilir. 0x00 MSB LSB MSB LSB a b c d e f g h e f g h a b c d SWAPF: file register’ın ilk ve son 4 biti (nibble) yer değiştirilir. 0x4E 0x4F
18
KOMUTLAR (bit işlemleri)
Register içerisindeki ilk 4 bit ile son 4 bit yer değiştirilir. SWAPF f , d : d=0 ise f’in nibble parçaları yerdeğiştirilir W veya d=1 ise f’in nibble parçaları yer değiştirilir f
19
MİKROİŞLEMCİ PROGRAMLAMA
DERS 6 MİKROİŞLEMCİ PROGRAMLAMA - SON - Kaynak: Mikrodenetleyiciler ve PIC Prog., Orhan ALTINBAŞAK, ISBN
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.