?? adc.asm
字號:
;=========================================================
; A/D轉換子程序,采樣16次并取平均值
;
;---------------1次A/D轉換子程序--------------------------
ADCONV
CALL INTADC
CALL DELAY1
BSF ADCON0,GO ;A/D START
ADCONV1
BTFSS PIR1,ADIF
GOTO ADCONV1
MOVF ADRESH,W
MOVWF ADH
BANKSEL ADRESL
MOVF ADRESL,W
BANKSEL PORTC
MOVWF ADL
BCF PIR1,ADIF ;加一句清中斷溢出標志即可
RETURN
;------------------------16次求和--------------------------
ADAVG
MOVLW 10H
MOVWF COUNT0
ADAVG1
CALL ADCONV
BCF STATUS,C
MOVF ADL,0
ADDWF TEMPL,1
MOVF ADH,0
ADDWF TEMPH,1
BTFSC STATUS,C ;DO WITH "C"
CALL ADDONE
GO_ON
DECFSZ COUNT0,1
GOTO ADAVG1
MOVLW 04H
MOVWF RL
GO1
BCF STATUS,0
RRF TEMPL,1
RRF TEMPH,1
DECFSZ RL,1
GOTO GO1
RETURN
ADDONE
MOVLW 01H
ADDWF TEMPH
RETURN
;-----------------------------------------------
INTADC
BANKSEL ADCON0
MOVLW 0X41
MOVWF ADCON0 BANKSEL ADCON1
MOVLW 0X8E
MOVWF ADCON1 BANKSEL ADCON0
RETURN
;-----------------------------------------------
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -