Netindir

Net-İndir

Güncel Oyun & Program & Resim & Msn Forumu


Pic Programlama Ders - 8

Elektronik Bölümü icinde Pic Programlama Ders - 8 konusu , DERS - 8 Daha önceki yazılarımızda 16F84 komut setini ve temel esasları incelemiştik, artık yavaş yavaş bu komutları kullanarak program yazmaya başlayabiliriz. . . Bilgisayarımıza MPLAB programını kurduktan sonra bu ...

Geri git   Netindir >
..:: Eğitim & Kültür & Güncel Köşe ::..
> Elektrik-Elektronik > Elektronik Bölümü

Anlık İletiler Kayıt ol Yardım Üye Listesi Ajanda Arama Bugünki Mesajlar Forumları Okundu Kabul Et

Cevapla

 

LinkBack Seçenekler Stil
  #1 (permalink)  
Alt 05-30-2007
.... --- --. --. . -

Arrow Pic Programlama Ders - 8

DERS - 8
Daha önceki yazılarımızda 16F84 komut setini ve temel esasları incelemiştik, artık yavaş yavaş bu komutları kullanarak program yazmaya başlayabiliriz.
.
.
Bilgisayarımıza MPLAB programını kurduktan sonra bu program içindeki PFE (programing file editor) ile programlarımızı yazıp, bir klasör altına sonu ASM olacak şekilde save edeceğiz, bu klasörde inc dosyasının olmasına dikkat edeceğiz, daha sonra bu editor programı içinde iken, project / build nod seçeneği ile ASM dosyamızı HEX haline getireceğiz, bu sırada çıkan pencereden ERR dosyasını da işaretlersek bir hata yapmamız halinde bu dosyayı editorda inceleyerek hatayı bulma imkanımız olacaktır.Tüm dosyalar aynı klasör altında olacağı için zamanla bu klasörün büyümesi halinde bu dosyalar bir başka klasöre aktarılabilir.
KONFİGÜRASYON BİTLERİ
Yazdığımız program içinde konfigürasyon bitleri dediğimiz bazı komutları kullanırsak, hex dosyasını pic içine attığımız programdaki bazı ayarlar otomatik olarak gerçekleşir (picprog gibi).Eğer bu komutları kullanmazsak yazma sırasında bu seçenekleri manuel olarak yapmamız gerekmektedir.
1 Code protect on - off
2 Power on reset on – off
3 Watchdog timer on – off
4 Low power osc.
5 Xtal osc.
6 High speed osc.
7 RC osc.




Bu komutlar dan son 4 tanesi osilatör tiplerini tanıtmaya yararlar. 1 komut pic içine yazılan bilginin kopyalanmamasını sağlar.
Bu komutların yazılışında etiket olarak __CONFIG komutu kullanılır. Daha sonra & ve bir space bar ile diğer komutlar yazılır.
__CONFIG _CP_OFF &_WDT_OFF &_PWRTE_ON &_ XT_ON

;Deneme program 1
;RA0 da led'in yanması
LIST P=16F84
INCLUDE "16F84.INC"
__CONFIG _CP_ON &_WDT_ON &_LP_OSC &_PWRTE_OFF
CLRF PORTA ;Port a çıkışlara low (sönük)
BSF STATUS,5 ;Bank 1'e gec
CLRF TRISA ;Port A yi çıkış pozisyonuna getir
BCF STATUS,5 ;Bank 0 'a gel
BSF PORTA, 0 ;RA0 daki led 'i yak
END
· CONFIG ifadesinin yanındaki alt çizgi çift olmalıdır ‘ ___ ’
· Daha sonra yazılan ifadeler tek alt çizgili olmalıdır ‘ _ ‘
· Konfigürasyonlar arasında bir space olmalıdır
· Space den sonra & işareti kullanılmalıdır
· & işaretinden sonra ara vermeden konfigürasyon yazılır
· Picprog da PWRTE işaretli değil ise Power on reset aktiftir,yani konfigürasyonda off yaparsanız programda pencere işaretli olarak açılır.



WRITE REGİSTER
Registerler arasında veri transferi yapmak için kullanılan bir registerdir ve RAM içindeki file registerlerden bağımsızdır.
MOVLW H’FF’ ; Write registere FF değeri yaz
MOVLW B’11111111’ ; Yukarıdaki ile aynı değerdir
MOVLW D’255’ ; Write registere decimal 255 sayısını yaz
Write registere yazılan bu bilgiler daha sonra bir başka registere transfer edilir.
MOVWF PORTB ; Port b nin çıkışlar high olur
MOVWF TRISB ; Port b nin kapıları giriş olur
ÖRNEK PROGRAM

;Deneme program
;RB0 RB1 ve RB2 de led'in yanması
LIST P=16F84
INCLUDE "16F84.INC"
CLRF PORTB
BSF STATUS,5
CLRF TRISB
BCF STATUS,5
MOVLW B'00000111'
MOVWF PORTB
END
;Deneme program
;RB0 RB1 ve RB2 de led'in yanması
LIST P=16F84
INCLUDE "16F84.INC"
CLRF PORTB ;Port b çıkışlar low,sönük
BSF STATUS,5 ;Bank 1'e gec
CLRF TRISB ;Port B yi çıkış pozisyonuna getir
BCF STATUS,5 ;Bank 0 'a gel
BSF PORTB,0 ;portb nin ilk bitini high yap (lojik 1)
BSF PORTB,1 ;portb nin 2. bitini high yap
BSF PORTB,2 ;portb nin 3. bitini high yap
END
Bitin high olması çıkışta +5 volt olması yani lojik 1 dir
Bu iki programda farklı komutlar kullanılarak aynı işlem yaptırılmaktadır.Değişik komutlar ile aynı işlemleri yaptırmak mümkündür. Bu nedenle komutları tek tek inceleyelim ve bunlarla ilgili program örnekleri yazalım.

Alıntı ile Cevapla

Powered by vBulletin® Version 3.6.12
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0 ©2009, Crawlability, Inc.
Güncel Forum, Güncel Net, Güncel Mekan, Net-indir.com | Bedava program, oyun, msn, resim indirme sitesi, BestForumTR.net, MsnTR.Org, Güncel Forum Sitesi
Gizlilik Bildirimi