16f628a'nın mclr pinini giriş olarak kullanamıyorum.lütfen yardım edin.

Başlatan serdar_27, 17 Ocak 2014, 12:24:03

serdar_27

pic'e yeni başlayan bir kullanıcıyım. porta'daki ra0, ra4, ra5 ve ra7 uçlarnı giriş yaparak rb0, rb4, rb5 ve rb7 pinlerini çıkış olarak kullanıp ledler yakmak istiyorum. ra5 pin'ini config bölümünde MCLRE off yapmama rağmen ra5 pin'ini giriş olarak kullanamadım.
resimde isis te resmini verdim.




;=====PROG1.ASM========16.01.2014================
   LIST P=16F628A
_CONFIG_INTRC_OSC_NOLCKOUT
_WDT_OFF_PWRTE_ON_MCLRE_OFF
_BODEN_OFF_LVP_OFF_DATA_CP_OFF
_CP_OFF
;--------------------------------------------------
PORTA   EQU h'05'      ;
PORTB   EQU h'06'      ;
TRISA   EQU h'85'      ;
TRISB   EQU h'86'      ;
CMCON   EQU h'1F'      ;
   ORG h'0000'      ;
   CLRF   PORTB      ;
   BANKSEL TRISB      ;
   MOVLW b'00000000'   ;
   MOVWF TRISB      ;
   MOVLW b'11111111'   ;
   MOVWF TRISA      ;   
   BANKSEL PORTB      ;
   MOVLW b'00000111'   ;
   MOVWF CMCON      ;
TEST_PORTA
   BTFSS PORTA,0      ;
   BSF PORTB,0      ;
   BTFSS PORTA,4      ;
   BSF PORTB,4      ;
   BTFSS PORTA,5      ;
   BSF PORTB,5      ;
   BTFSS PORTA,7      ;
   BSF PORTB,7      ;
   GOTO TEST_PORTA      ;
   END         ;





Maxim

mclr zaten çıkış olamaz
tris registerını düzgün belirttinizmi?

TRISA=%xxxxxxxx

serdar_27

config kısmında pic'in resetleme özelliğini iptal etmek için MCLRE ON iken MCLRE OFF yaptım. eğer verdiğim program içerisinde gözünüze çarpan eksiklik ya da yanlışlık varsa bir düzeltme yapıp bana gönderirseniz  çok iyi olur.

ferit06

Devreyi gerçek ortamda çalıştırmadığınızı düşünüyorum. ISIS de bu tür hatalar olabilir.


Eğer gerçek ortamda çalıştırmayı denemiş olsa idiniz  dahili osilator kullanımı ile birlikte MCLR_OFF kullanımının sakıncası ile tanışmış olacaktınız. RA5 pini giriş olarak kullanılabilse de zorunlu olmadıkça bu pini kullanmamaya çalışınız. Hem dahili osilator kullancağım hem de RA5 i giriş Programlama sırasında programlayıcınızın VDD/Vpp ile ilgili olarak first Vpp seçeneği varsa bunu kullanmanız gerekecek. Aksi takdirde  PIc inizi bir daha programlayamabilirsiniz.


serdar_27

ben elimdeki pic kitabının verdiği alıştırmayı yapıyorum. orada ra5 i giriş olarak kullanın diyor. o yüzden kullandım. ilginiz ve uyarılarınız için çok teşekkür ederim.

Tagli

Şöyle bir bakınca programda hata göremedim. Ancak, neden SFR adreslerini elle tanımladığını anlayamadım. Normalde bunlar için standart bir .inc dosyası koda eklenir. Benim de tavsiyem kodu fiziksel olarak denemen.

Bu arada, aklında olsun: PORT register'ları üzerinde arka arkaya uygulanan bsf ve bcf gibi komutlar soruna sebep olabilir. Bu komutlar aralarında bir zaman gecikmesi olmadan arka arkaya geldiklerinde, her komutun bir öncekinin etkisini yok etme ihtimali var. PIC düşük hızda çalışıyorsa bu durum ortaya çıkmayabilir. Daha önce birkaç yerde konuşulmuştu.

Son olarak, ASM ile ilgili bu konu, PicBasic bölümü altında ne geziyor?
Gökçe Tağlıoğlu

serdar_27