PIC P16F84 kodu doğru mu?

Icaruss

Hectopat
Katılım
9 Kasım 2020
Mesajlar
124
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
Merhaba dostlar, Assembly ile yazdığım kodda amacım portb çıkışlarını aktifleştirip LED'leri 2 saniye aralıkla yakmak. Kodda gecikme var fakat 2 saniyeye ayarlayabildim mi emin olamadım.

Kod:
LIST P=16F84A
INCLUDE "P16F84A.INC"
 SAYAC1 EQU h'0C'.
 SAYAC2 EQU h'0D'.

CLRF PORTB.
BSF STATUS, 5
CLRF TRISB.
BCF STATUS, 5
TEKRAR.
 MOVLW h'00'.
 MOVWF PORTB.
 CALL GECIKME.
 MOVLW h'FF'.
 MOVWF PORTB.
 CALL GECIKME.
 GOTO TEKRAR.
GECIKME.
 MOVLW h'FF'.
 MOVWF SAYAC1.
DONGU1.
 MOVLW h'FF'.
 MOVWF SAYAC2.
DONGU2.
 DECFSZ SAYAC2, F
 GOTO DONGU2.
 DECFSZ SAYAC1, F
 RETURN.
 END
 
Merhaba dostlar, Assembly ile yazdığım kodda amacım portb çıkışlarını aktifleştirip LED'leri 2 saniye aralıkla yakmak. Kodda gecikme var fakat 2 saniyeye ayarlayabildim mi emin olamadım.

Kod:
LIST P=16F84A
INCLUDE "P16F84A.INC"
 SAYAC1 EQU h'0C'.
 SAYAC2 EQU h'0D'.

CLRF PORTB.
BSF STATUS, 5
CLRF TRISB.
BCF STATUS, 5
TEKRAR.
 MOVLW h'00'.
 MOVWF PORTB.
 CALL GECIKME.
 MOVLW h'FF'.
 MOVWF PORTB.
 CALL GECIKME.
 GOTO TEKRAR.
GECIKME.
 MOVLW h'FF'.
 MOVWF SAYAC1.
DONGU1.
 MOVLW h'FF'.
 MOVWF SAYAC2.
DONGU2.
 DECFSZ SAYAC2, F
 GOTO DONGU2.
 DECFSZ SAYAC1, F
 RETURN.
 END

Selam iyi Sosyaller. Programın düzeltilmiş halini atıyorum fakat tam olarak gecikme süresini ayarlamam için denetleyicinin frekansını öğrenmem gerekiyor.

Genede ;

Kod:
LIST P=16F84A
INCLUDE "P16F84A.INC"

SAYAC1 EQU h'0C'
SAYAC2 EQU h'0D'

CLRF PORTB
BSF STATUS, 5
CLRF TRISB
BCF STATUS, 5

TEKRAR
    MOVLW h'00'
    MOVWF PORTB
    CALL GECIKME
    MOVLW h'FF'
    MOVWF PORTB
    CALL GECIKME
    GOTO TEKRAR

GECIKME
    MOVLW h'0C'
    MOVWF SAYAC1

DONGU1
    MOVLW h'8F' ;
    MOVWF SAYAC2

DONGU2
    DECFSZ SAYAC2, F
    GOTO DONGU2

    DECFSZ SAYAC1, F
    GOTO DONGU1

    RETURN
    END
 
Selam iyi sosyaller. Programın düzeltilmiş halini atıyorum fakat tam olarak gecikme süresini ayarlamam için denetleyicinin frekansını öğrenmem gerekiyor.

Gene de;

Kod:
LIST P=16F84A
INCLUDE "P16F84A.INC"

SAYAC1 EQU h'0C'.
SAYAC2 EQU h'0D'.

CLRF PORTB.
BSF STATUS, 5
CLRF TRISB.
BCF STATUS, 5

TEKRAR.
 MOVLW h'00'.
 MOVWF PORTB.
 CALL GECIKME.
 MOVLW h'FF'.
 MOVWF PORTB.
 CALL GECIKME.
 GOTO TEKRAR.

GECIKME.
 MOVLW h'0C'.
 MOVWF SAYAC1.

DONGU1.
 MOVLW h'8F' ;
 MOVWF SAYAC2.

DONGU2.
 DECFSZ SAYAC2, F
 GOTO DONGU2.

 DECFSZ SAYAC1, F
 GOTO DONGU1.

 RETURN.
 END

Nereden öğreniyorsunuz bu dili hocam.
 

Yeni konular

Geri
Yukarı