PIC單片機(jī)A/D轉(zhuǎn)換過程
1、設(shè)定ADCON1和TRISx寄存器,配置引腳的工作模式;
本文引用地址:http://m.butianyuan.cn/article/201611/316231.htm2、若需要轉(zhuǎn)換完畢中斷響應(yīng),需設(shè)定相關(guān)的中斷控制寄存器;
3、設(shè)置ADCON0寄存器,選擇A/D轉(zhuǎn)換的時鐘,選擇模擬信號輸入通道,打開A/D模塊,注意此時GO/DONE位不要置1;
4、等待足夠長的采樣延時;
5、將ADCON0中的GO/DONE控制位置1,啟動一次A/D轉(zhuǎn)換過程;
6、查詢A/D轉(zhuǎn)換結(jié)束標(biāo)志:GO/DONE位在A/D轉(zhuǎn)換結(jié)束時會自動清0,ADIF標(biāo)志位在A/D轉(zhuǎn)換結(jié)束后會自動置1,這兩個位都可以作為軟件查詢A/D轉(zhuǎn)換是否結(jié)束的標(biāo)志,使用ADIF標(biāo)志時記得要用軟件將其清除;
7、若用中斷來響應(yīng)A/D轉(zhuǎn)換的結(jié)束,則上一點(diǎn)將不再適用,A/D轉(zhuǎn)換結(jié)束時,ADIF的置位將使單片機(jī)進(jìn)入中斷服務(wù)程序,在處理中斷是記得將其清0;
8、轉(zhuǎn)換結(jié)束,直接從ADRES寄存器中讀取8位轉(zhuǎn)換結(jié)果,存入其他緩沖單元或者直接進(jìn)行運(yùn)算處理;
9、修改ADCON0寄存器的CHS2:CHS0,選擇其他通道輸入的模擬信號進(jìn)行A/D轉(zhuǎn)換,程序重復(fù)4到9點(diǎn)的循環(huán)。
評論