P16F628A Bilen Yokmu

aliuykun42

Üye
Katılım
27 Kas 2006
Mesajlar
22
Puanları
1
Yaş
39
Arkadaşlar p16f628a hakkında bilgi sahibi olan yokmu açtığım konular cevapsız kalıyor hep...p16f628 eeprom veri yazma işlemini yapamayıorum bulduğum kodları denedim olmadı eğer bilen varsa asm dilinde yardımlarını bekliyorum....
 
ccs derleyicisini yükle. Örneklerin içerisinde dahili eeprom yazmak için mutlaka bir örnek vardır. Yoksa da write_eeprom(adres,sayi) ve read_eeprom(adres) fonksiyonlarını araya ekle, programı derle, derleme sonucu oluşan listing den write ve read eeprom satırlarının assembly karşılıklarını bul ve kendi yazdığın programa ekle.

Veya aç datasheet'inden eeproma nasıl yazıldığını oku ve programına aktar.

Piclist forumuna ait örneklere de bakabilirsin (ingilizcedir).
 
#include <p16F84A.inc> ; PIC16F84 TANIMLAMA DOSYASI

__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC

PORTLARI_AYARLA
CLRF PORTB ; RESET portb
CLRF PORTA ; RESET portA

BSF STATUS,RP0 ; BANK 1 GECILIR
MOVLW B'00000000' ; RB0..7=CIKIS
MOVWF TRISB
MOVLW B'00000001' ; RA0-5=GIRIS
MOVWF TRISA
BCF STATUS,RP0 ; BANK 0 GECILIR
;===EEPROM VERİ YAZMA=================
YAZ
MOVLW H'02'
MOVWF EEADR ;EEDATA<--W
MOVLW H'40' ;W<--DAT (YAZILCAK VERİ
MOVWF EEDATA ;W<--EEDATA
BSF STATUS,5 ;BANK1
;====YAZMA İÇİN GEREKLİ BAYRAKLARIN KURULMASI====
BCF EECON1,EEIF ;YAZMA BİTİŞ BAYRAĞINI KUR
BSF EECON1,WREN ;EEPROM'a YAZMAYA İZİN VER
BCF INTCON,GIE ;INTERRUPLARI İPTAL ET
;====YAZMA İÇİN GEREKLİ KODLAR BURDAKİLAR SABİT KOD====
MOVLW h'55' ;YAZMA İÇİN GEREKLİ KODLAR BURDAKİLAR SABİT KOD
MOVWF EECON2 ;YAZMA İÇİN GEREKLİ KODLAR BURDAKİLAR SABİT KOD
MOVLW h'AA' ;YAZMA İÇİN GEREKLİ KODLAR BURDAKİLAR SABİT KOD
MOVWF EECON2 ;YAZMA İÇİN GEREKLİ KODLAR BURDAKİLAR SABİT KOD
BSF EECON1,WR ;YAZMA İÇİN GEREKLİ KODLAR BURDAKİLAR SABİT KOD
BEKLE_YAZMA
BTFSS EECON1,EEIF ;YAZMA İŞLEMENİN BİTTİĞİNİ KONTROL EDİYOR
GOTO BEKLE_YAZMA
;===BAYRAKLARI İLK KONUMA GETİRME====
BCF EECON1,EEIF
BCF EECON1,WREN
BSF INTCON,GIE
BCF STATUS,5

BTFSS PORTA,0
GOTO $-1
GOTO OKU

;===EEPROM VERİ OKUMA PROGRAMI=================
OKU
MOVLW h'02'
MOVWF EEADR ;EEADR<--W
BSF STATUS,5 ;BANK1
BSF EECON1,0 ;OKUMAYI AKTİF ET
BCF STATUS,5 ;BANK0
MOVF EEDATA,W ;W<--EEDATA
MOVWF PORTB

BTFSS PORTA,0
GOTO $-1
GOTO PORTLARI_AYARLA

END
-------------------
şimdi arkadaşar bu programla deniyorum yazmayı
BEKLE_YAZMA
BTFSS EECON1,EEIF ;YAZMA İŞLEMENİN BİTTİĞİNİ KONTROL EDİYOR
GOTO BEKLE_YAZMA
bu satırlarda takılıp kalıyor ama mplap programında denerken bunu bu takıldığı yerde simülasyonda duraklatıp tekrar başlantınca bu takılmayı atlayıp yazma işlemini gerçekleştiriyor....
 

Forum istatistikleri

Konular
128,149
Mesajlar
915,476
Kullanıcılar
449,891
Son üye
Ercan29

Yeni konular

Geri
Üst