PIC16F84 ile Program Yazma(öğrenciyim)

bonibon01

Üye
Katılım
10 Ağu 2012
Mesajlar
11
Puanları
1
Merhaba,

2.sınıf öğrencisiyim mikroişlemci dersimizde pıc16f84 ile program yazmasını öğreniyorum.

Bir sorum var bu programı yazmasını bilen arkadaşlar, ağabeyler yardımcı olursa sevinirim.

RA0'daki ve RA1'deki butonların ikisine birden basıldığında RB0'daki ledin yanmasını sağlayan program yazınız.

Teşekkürler.
 

MAIN_LOOP

Onursal Üye
Onursal Üye
Katılım
28 Ara 2011
Mesajlar
2,184
Puanları
935
Yaş
42
Konum
ANKARA
and kapısı mantığını işleyeceksiniz fakat hocanız hangi dilde yazmanızı istedi?
 
Konu Sah

bonibon01

Üye
Katılım
10 Ağu 2012
Mesajlar
11
Puanları
1
and kapısı mantığını işleyeceksiniz fakat hocanız hangi dilde yazmanızı istedi?
assambly dilinde yazıyoruz örneğin ayarlar kısmını yazıyoruz önce
list p=16F84A
include "p16f84a.inc"
clrf porta
clrf portb
bsf status, 5
bcf trisa, 0
bcf status, 5

bu kısımdan sonrası yukarda verdiğim örneğin assambly dilinde yazılmasına ait yardımcı olun lütfen.

btfsc, goto, bsf gibi komutlarla yazıyoruz hep zaten ama tam çözemedim olayı ve bugün sınavım var çıldırmak üzereyim geceden beri çalışıyorum.
 

GüvTek

Üye
Katılım
7 Mar 2012
Mesajlar
190
Puanları
1
Yaş
32
Butonlar pull-up lı ise yani direnç +'dan ise alttaki program, pull-down lı ise BTFSC yerine BTFSS kullanman gerekiyor.. Prog ilk açılışta çıkışı 0 yapıyor, iki butona da basılmadıysa çıkış 1 ya da 0, nolursa olsun, çıkışı 0 yapar.. İki butona da basıldığında ise çıkışı ne olursa olsun 1 yapar.. Bu işini görür mü bilemem..



BASLA
BCF
PORTB, 0
BTN_KTRL
BTFSC PORTA, 0
GOTO BASLA
BTFSC PORTA, 1
GOTO
BASLA

BSF PORTB, 0
GOTO BTN_KTRL



Edit: Sanırım geç kaldım.. :)
 

muco124

Üye
Katılım
30 Eki 2010
Mesajlar
3
Puanları
1
Yaş
32
Butonlar pull-up lı ise yani direnç +'dan ise alttaki program, pull-down lı ise BTFSC yerine BTFSS kullanman gerekiyor.. Prog ilk açılışta çıkışı 0 yapıyor, iki butona da basılmadıysa çıkış 1 ya da 0, nolursa olsun, çıkışı 0 yapar.. İki butona da basıldığında ise çıkışı ne olursa olsun 1 yapar.. Bu işini görür mü bilemem..



BASLA
BCF PORTB, 0
BTN_KTRL
BTFSC PORTA, 0
GOTO BASLA
BTFSC PORTA, 1
GOTO BASLA

BSF PORTB, 0
GOTO BTN_KTRL



Edit: Sanırım geç kaldım.. :)
Dahili saat frekansı 4 MHz olan PIC16F84 mikro denetleyicisinde TMRO sayıcısı yardımıyla 1/256 frekans bölme oranında 40 ms'de bir kesme işareti oluşturulacaktır. Bu 40 ms’lik kesme işareti kullanılarak 1 saniyelik gecikme elde edilecektir. B portuna 8 adet ışık veren LED bağlanmıştır. Programın başında bütün LED'ler sönük olacaktır. Her bir saniyede B portundaki sayı bir arttırılacak ve sayı ışık veren LED'lerde gösterilecektir. Sayma işlemi için SAYAC adlı değişken kullanılarak nasıl yazabiliiriz
 

mehmet.bey

Profesyonel Üye
Katılım
19 Ara 2011
Mesajlar
1,550
Puanları
281
Konum
Galaksi Dışı
Kesme olmadan aynı işi yapan
C kodunu yazın. Özellikle MC XC8 ile.
Yardım etmeye çalışırım.

Ödev mi bu?
 

Forum istatistikleri

Konular
118,141
Mesajlar
832,344
Kullanıcılar
429,580
Son üye
selentemel9

Yeni konular

Üst