PIC uygulamaları adlı yazı dizimizin ilki olan bu uygulamada
PIC 16F628A kullanarak LED yakacağız.
Kullanılacak
Malzemeler
-
1xPIC16F628A
-
1x4
Mhz kristal
-
2x22pf
seramik kondansatör
-
1x100nF
seramik kondansatör
-
1xKırmızı
Led(Sarı, yeşil,beyaz veya diğer renkler de olabilir)
-
1x330
ohm direnç
- 1x100 ohm direnç
- 1x4,7k direnç
- 1xButon
-
5 V
DC kaynak(Batarya, pil, adaptör veya güç kaynağı)
Not: Eğer 9-12 V luk bir kaynak kullanacaksanız bu gerilimi
5 V a düşürebilmek için regülatör(düzenleyici) devresi kullanmanız gerekmektedir.
Regülatör Devresi
Bu devre 7-20 V arasındaki
gerilimi 5 V gerilime dönüştürür.
Kullanılacak Malzemeler(Regülatör İçin)
>>1x7805
>>1x330uF
elektrolitik kondansatör
>>1x100nF
seramik kondansatör
Şekil 1-Regülatör Devresi Şekil 2-LM7805
PIC Devresi
Şekil 3-PIC
Devresi
Şekil
4-PIC16F628A Pin Diyagramı
PIC Assembly Kodu
;PIC 16F628A ile LED Yakma
;Bu
kod Tuna Bulut tarafından yazılmıştır.
LIST P=16F628A
INCLUDE "P16F628A.INC"
-
__CONFIG _XT_OSC &
_WDT_OFF & _PWRTE_ON & _MCLRE_ON & _BODEN_OFF & _LVP_OFF &
_DATA_CP_OFF & _CP_OFF
MOVLW H'07'
MOVWF CMCON ;COMPARATOR ÖZELLİĞİ KAPALI VE PORTA I/O İÇİN AKTİF MODDA
CLRF PORTB ;PORTB Yİ SIFIRLA
;GİRİŞ-ÇIKIŞ TANIMLAMALARI
BANKSEL TRISA ;BANK1
E GEÇİŞ YAP
MOVLW H'FF'
MOVWF TRISA ;PORTA
NIN BÜTÜN PİNLERİNİ GİRİŞ YAP
CLRF TRISB ;PORTB NİN BÜTÜN PİNLERİNİ ÇIKIŞ YAP
BANKSEL PORTB ;TEKRAR BANK0 A GEÇ
CLRF PORTB ;PORTB
Yİ SIFIRLA
;ANA PROGRAM
LED_YAK
BSF PORTB,0 ;LED
İN BAĞLI OLDUĞU PİNİ 1 YAP
GOTO LED_YAK ;LED_YAK
A GİT(SONSUZ DONGU)
END ;KODUN BİTİMİ
Not: Eğer RA6 ve RA7 pinlerini Giriş/Çıkış(I/O) olarak kullanmak istiyorsanız. Harici osilatör kullanmak yerine PIC16F628A'nın içinde bulunan 4 MHz dahili osilatörü kullanabilirsiniz. Bunun için devrede ve kodda birtakım değişiklik yapmanız gerekir: Devrede RA6 ve RA7 pinlerine bağlı bulunan elemanların yani kristal ve kapasitörlerin bağlantısını kesin ve kodda _XT_OSC yerine _INTRC_OSC_NOCLKOUT yazın. Ayrıca Reset opsiyonunu kullanmak istemiyor ve bu pini giriş olarak kullanmak istiyorsanız. RA5/MCLR pinine bağlı tüm elemanların ve yolların bağlantısını kesin kısacası bu pini açıkta bırakın ve kodda _MCLRE_ON yerine _MCLRE_OFF yazın. Şunu unutmayın ki RA5 pinini giriş olarak kullanabilirsiniz ama çıkış olarak kullanamazsınız.
_CONFIG komutuyla PIC in sigorta(fuse) ayarlarını yapıyoruz.
Bu ayarları pic e kod yüklemek için kullandığımız yazılımla da yapabiliriz. PIC
16F628A da comparator özelliği vardır ve bu özelliği kapatıp PORTA yı
giriş/çıkış olarak kullanabilmek için CMCON yazmacına H’07’ sayısını yüklememiz
gerekiyor. BANKSEL komutlarını ise bankları değiştirmek için kullandık. Burada
kullanılan komutların ne olduklarını ve kullanılma şekillerini öğrenmek için
lütfen “PIC ve PIC Assembly ye Giriş” yazısını okuyunuz.
|
TEBRİK
Yazan:: İSMAİL__FK (Misafir ) Tarih: 02-04-2008 03:20
» Yorumu cevapla...
» Tüm cevap(ları) 1 gör