Arama butonu
Bu konudaki kullanıcılar: 1 misafir
1
Cevap
545
Tıklama
0
Öne Çıkarma
pic16f877 a/d
A
18 yıl
Yüzbaşı
Konu Sahibi

Arkadaşlar pic16f877de a/d olayını bir türlü yapamadım. Bunun üzerine test için bir kod yazdım. Fakat oda çalışmıyor. Acaba kodda bir hatamı var? Bir şeyleri gözdenmi kaçıyorum? Yardımcı olursanız sevinirim.
 
LIST P=16F877A
INCLUDE "P16F877A.INC"
__CONFIG _CP_OFF &_WDT_OFF &_PWRTE_ON &_HS_OSC &_BODEN_OFF &_LVP_OFF &_CPD_OFF

TEMP EQU H'0020'
SAYI1 EQU H'0021'
SAYI2 EQU H'0022'
SAYI3 EQU H'0023'
GOTO BASLA
STARTAD
BSF STATUS,RP0
MOVLW H'2D'
MOVWF ADCON1 ;ra0 analog, ad sonuçları sağa hizalanmış(adfm=1)
BCF STATUS,RP0
MOVLW B'11000001' ;internal rc clock,ad açık,kanal an0
MOVWF ADCON0
BSF STATUS,RP0
CLRF ADRESL
RETURN
BASLA
CLRF TRISC
MOVLW B'00000001' ;RA0 Giriş
MOVWF TRISA
BCF STATUS,RP0
CLRF PORTC
CLRF PORTA
CALL STARTAD
STD
BSF STATUS,RP0
MOVF ADRESL,W
BCF STATUS,RP0
MOVWF PORTC ;ADRESL içeriğini portc de göster
MOVLW .20
CALL BEKLE2 ;bekle
BCF STATUS,RP0
BSF ADCON0,2 ;a/d dönüşümü başlat
DONUSUM
BTFSC ADCON0,2 ;dönüşümün bitmesini bekle
GOTO DONUSUM
GOTO STD ;bir daha hesapla
BEKLE2
DON3
DECFSZ SAYI1,F
CALL BEKLE
DECFSZ SAYI1,F
GOTO DON3
RETURN
BEKLE
MOVLW .100
MOVWF SAYI2
DON1
MOVLW .255
MOVWF SAYI3
DON2
DECFSZ SAYI3,F
GOTO DON2
DECFSZ SAYI2,F
GOTO DON1
RETURN
END




S
18 yıl
Teğmen

ben ccs c de yaptım ama assembly i bilemiyorum



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.