AD轉(zhuǎn)換匯編程序?qū)嵗?/h1>
AD轉(zhuǎn)換程序?qū)嵗?p>;此程序是一個(gè)簡(jiǎn)單的AD轉(zhuǎn)換演示例程,作0-5V電壓測(cè)試
;轉(zhuǎn)換結(jié)果從C口輸出 非常直觀
;轉(zhuǎn)換的值A(chǔ)DRESH在0V是0發(fā)光管全滅,5V時(shí)全亮
;==============================================本文引用地址:http://m.butianyuan.cn/article/201611/316232.htminclude
ORG 0X00
NOP
START
BCF STATUS,RP0
CLRF PORTC
MOVLW B01000001 ;D7 D6=01 AD轉(zhuǎn)換時(shí)鐘頻率= FOSC/8
MOVWF ADCON0 ;D5 D4 D3=000 AD轉(zhuǎn)換模擬通道選擇RA0/AN0
;D2=0 AD已完成或未進(jìn)行AD D0=0關(guān)閉ADC
BSF STATUS,RP0
MOVLW B10000111 ;D7=1取消上拉,D6=0 INT下降沿觸發(fā),
MOVWF OPTION_REG ;D5=0 TOCK1使用內(nèi)部時(shí)鐘D4=0 TOCK1上升沿增量
;D3=0用于TMR0 D2 D1 D0=1 TMR0 1:256分頻
CLRF TRISC
MOVLW B00001110 ;D3 D2 D1 D0 1110選擇RA0為模擬口。
MOVWF ADCON1 ;D7=0左對(duì)齊ADRESL的低六位讀作0
BCF STATUS,RP0
MAIN
BTFSS INTCON,T0IF ;等待TMR0定時(shí)溢出中斷
GOTO MAIN
BCF INTCON,T0IF ;清TMR0定時(shí)溢出標(biāo)志
BSF ADCON0,GO ;開啟A/D
WAIT
BTFSS PIR1,ADIF ;等待A/D完成
GOTO WAIT
MOVF ADRES,W ;A/D值從PORTC口輸出顯示
MOVWF PORTC
GOTO MAIN
END
;轉(zhuǎn)換結(jié)果從C口輸出 非常直觀
;轉(zhuǎn)換的值A(chǔ)DRESH在0V是0發(fā)光管全滅,5V時(shí)全亮
;==============================================本文引用地址:http://m.butianyuan.cn/article/201611/316232.htm
include
ORG 0X00
NOP
START
BCF STATUS,RP0
CLRF PORTC
MOVLW B01000001 ;D7 D6=01 AD轉(zhuǎn)換時(shí)鐘頻率= FOSC/8
MOVWF ADCON0 ;D5 D4 D3=000 AD轉(zhuǎn)換模擬通道選擇RA0/AN0
;D2=0 AD已完成或未進(jìn)行AD D0=0關(guān)閉ADC
BSF STATUS,RP0
MOVLW B10000111 ;D7=1取消上拉,D6=0 INT下降沿觸發(fā),
MOVWF OPTION_REG ;D5=0 TOCK1使用內(nèi)部時(shí)鐘D4=0 TOCK1上升沿增量
;D3=0用于TMR0 D2 D1 D0=1 TMR0 1:256分頻
CLRF TRISC
MOVLW B00001110 ;D3 D2 D1 D0 1110選擇RA0為模擬口。
MOVWF ADCON1 ;D7=0左對(duì)齊ADRESL的低六位讀作0
BCF STATUS,RP0
MAIN
BTFSS INTCON,T0IF ;等待TMR0定時(shí)溢出中斷
GOTO MAIN
BCF INTCON,T0IF ;清TMR0定時(shí)溢出標(biāo)志
BSF ADCON0,GO ;開啟A/D
WAIT
BTFSS PIR1,ADIF ;等待A/D完成
GOTO WAIT
MOVF ADRES,W ;A/D值從PORTC口輸出顯示
MOVWF PORTC
GOTO MAIN
END
評(píng)論