PIC單片機(jī)AD轉(zhuǎn)化器編程方法
掃描二維碼
隨時(shí)隨地手機(jī)看文章
要使用好ADC模塊首先要對(duì)ADC模塊進(jìn)行初始化設(shè)置,這些設(shè)置需要包括以下內(nèi)容:
1、設(shè)置ADC模塊端口和數(shù)據(jù)格式
通過設(shè)置控制寄存器ADCON1設(shè)置引腳功能為輸入信道,參考電壓接入方式,通過數(shù)字IO引腳和設(shè)置轉(zhuǎn)換結(jié)果的存放格式。
2、設(shè)置ADC模塊工作方式
通過控制寄存器ADCON0選中某一條模擬輸入信道,設(shè)置AD轉(zhuǎn)換時(shí)鐘源以及開啟AD轉(zhuǎn)換功能。
3、如果需要中斷功能,應(yīng)該設(shè)置AD中斷使能位
清除ADC模塊中斷標(biāo)志位ADIF,設(shè)置ADC模塊中斷使能位ADIE=1,設(shè)置中斷使能位PEIE=1和全局中斷使能位GIE=1.
4、等待所需要的采樣時(shí)間
采樣時(shí)間大約是10~20us,影響采樣時(shí)間的主要因素之一是模擬信號(hào)源內(nèi)阻,信號(hào)源內(nèi)阻的最大阻抗不得超過10K。
5、將控制位GO/DONE置1,開始AD轉(zhuǎn)換。
6、等待AD轉(zhuǎn)換完成,可以通過以下兩種方法之一來判斷:
方法一:軟件循環(huán)查詢狀態(tài)位兼控制位GO/DONE是否硬件自動(dòng)清零或中斷標(biāo)志位ADIF是否被硬件自動(dòng)置一。
方法二:等待中斷請(qǐng)求。在AD轉(zhuǎn)換完成后,ADIF位被置一,發(fā)出中斷請(qǐng)求。
7、讀取AD轉(zhuǎn)換結(jié)果寄存器ADRESH,ADRESL:
如果使用中斷標(biāo)志,需要將ADIF清零。
8、如果需要繼續(xù)轉(zhuǎn)換,根據(jù)實(shí)際要求重新從第二步或第三步開始
在轉(zhuǎn)換完成后,下一次采樣開始前,需加2T的等待時(shí)間約是3.2us(T為AD每位轉(zhuǎn)換時(shí)間)。