fetihnesli
Üye
- Katılım
- 31 Mar 2009
- Mesajlar
- 140
- Puanları
- 1
sa arkadaşlar;
ben 16f628a ile RF röle kontrolu yapıyorum
verici proğramını yazdım,
yanlız HEX e çevirirken 30 dan fazla hata verdi,
vakti olan varsa bu yazılımı hex e çevirebilirmi?
belki benim pc de yanlış yaptım..
((alıcı pro.yazdım,sorun çözülürse alıcıyı ben hallederim))
ben 16f628a ile RF röle kontrolu yapıyorum
verici proğramını yazdım,
yanlız HEX e çevirirken 30 dan fazla hata verdi,
vakti olan varsa bu yazılımı hex e çevirebilirmi?
belki benim pc de yanlış yaptım..
((alıcı pro.yazdım,sorun çözülürse alıcıyı ben hallederim))
Kod:
LIST P=16f628A
INCLUDE "P16F628A.INC"
org h'0000'
SAYAC EQU h'20'
SAYAC1 EQU h'21'
SAYAC2 EQU h'22'
SAYAC3 EQU h'23'
MOVLW h'07' ;PORTANIN UÇLARI SAYISAL,
MOVWF CMCON ;KARŞILAŞTIRICILAR İPTAL
CLRF PORTA
CLRF PORTB
BANKSEL TRISA ;BANK1 E GEÇ
MOVLW h'FF'
MOVWF TRISA
MOVLW b'11111011' ;RX=GİRİŞ,TX=ÇIKIŞ
MOVWF TRISB
MOVLW d'207' ;1200 BAUD RATE LIK HIZ
MOVWF SPBRG ;İÇİN SPBRG E 207 YÜKLENDİ
MOVLW b'00100100'
MOVWF TXSTA ;BRGH=1,TXEN=1 GÖNDERME AKTİF
BANKSEL PORTB ;BANK0 A GEÇ
BSF RCSTA,SPEN ;SERİ İLETİŞİM AKTİF
BCF RCSTA,SYNC ;ASENKRON SERİ İLETİŞİM AKTİF
CLRF SAYAC
DONGU
DECFSZ SAYAC,F ;KISA BİR SÜRE BEKLE
GOTO DONGU ;
RA1
BTFSC PORTA,1 ;RÖLE 1 İÇİN TUŞ1 BASILDI MI?
GOTO RA2 ;DEĞİL İSE TUŞ2 Yİ TEST ET.
CALL GECIKME ;EVET İSE, 1SN BEKLE,
CALL R1CEK ;RÖLE 1 İN ÇEKMESİ İÇİN BİLGİ HAZIRLA
CALL GECIKME ;1SN BEKLE
CALL GECIKME ;1SN BEKLE
CALL R1BIRAK ;RÖLE 1 İN BIRAKMASI İÇİN BİLGİ HAZIRLA
RA2
BTFSC PORTA,2
GOTO RA1
CALL GECIKME
CALL R2CEK
CALL GECIKME
CALL GECIKME
CALL R2BIRAK
R1CEK
BSF PORTB,2 ;TX UCU 1 DURUMUNDA
MOVLW b'00001000'
CALL R1CEKHAZIR
RETURN
R1BIRAK
BSF PORTB,2
MOVLW b'00000000'
CALL R1BIRAKHAZIR
RETURN
R2CEK
BSF PORTB,2
MOVLW b'00000100'
CALL R2CEKHAZIR
RETURN
R2BIRAK
BSF PORT,2
MOVLW b'00000000'
CALL R2BIRAKHAZIR
RETURN
R1CEKHAZIR
MOVWF TXREG ;W DEKİ BİLGİYİ TXREG E YÜKLE
BANKSEL TXSTA
R1-C-CVERİSONU
BTFSS TXSTA,TRMT ;STA YA VERİ GÖNDERME BİTTİ Mİ?
GOTO R1-C-VERİSONU ;HAYIR İSE TEKRAR TEST ET.
BANKSEL PORTB ;EVET İSE BANK0 A GEÇ.
RETURN
R1BIRAKHAZIR
MOVWF TXREG
BANKSEL TXSTA
R1-B-BVERİSONU
BTFSS TXSTA,TRMT ;STA YA VERİ GÖNDERME BİTTİ Mİ?
GOTO R1-B-BVERİSONU ;HAYIR İSE TEKRAR TEST ET.
BANKSEL PORTB ;EVET İSE BANK0 A GEÇ.
RETURN
R2CEKHAZIR
MOVWF TXREG ;W DEKİ BİLGİYİ TXREG E YÜKLE
BANKSEL TXSTA
R2-C-CVERİSONU
BTFSS TXSTA,TRMT ;STA YA VERİ GÖNDERME BİTTİ Mİ?
GOTO R2-C-VERİSONU ;HAYIR İSE TEKRAR TEST ET.
BANKSEL PORTB ;EVET İSE BANK0 A GEÇ.
RETURN
R2BIRAKHAZIR
MOVWF TXREG
BANKSEL TXSTA
R2-B-BVERİSONU
BTFSS TXSTA,TRMT ;STA YA VERİ GÖNDERME BİTTİ Mİ?
GOTO R2-B-BVERİSONU ;HAYIR İSE TEKRAR TEST ET.
BANKSEL PORTB ;EVET İSE BANK0 A GEÇ.
RETURN
GECİKME
MOVLW h'0F'
MOVWF SAYAC1
DONGU1
MOVLW h'FF'
MOVWF SAYAC2
DONGU2
MOVLW h'FF'
MOVWF SAYAC3
DONGU3
DECFSZ SAYAC3,F
GOTO DONGU3
DECFSZ SAYAC2,F
GOTO DONGU2
DECFSZ SAYAC1,F
GOTO DONGU1
RETURN
END