系統(tǒng)級(jí)ADC芯片MSC1210介紹及應(yīng)用
本文引用地址:http://m.butianyuan.cn/article/171343.htm
MSC1210內(nèi)帶8路24位模數(shù)轉(zhuǎn)換器,自身可實(shí)現(xiàn)溫度檢測(cè)、輸入源泉開(kāi)路短路檢測(cè)、增益和漂移校準(zhǔn)等。內(nèi)核中的32位累加器可實(shí)現(xiàn)24位結(jié)果的快速累加計(jì)算。
輸入多路轉(zhuǎn)換器將切換多路模擬輸入信號(hào)到輸入緩沖器。共有9路輸入信號(hào),其中1路為片內(nèi)溫度傳感器信號(hào),其余8路每路輸入可設(shè)置單極性輸入或差分輸入,通過(guò)ADMUX寄存器可隨意配置其輸入信號(hào)的正確與負(fù)端。片內(nèi)配置有模擬輸入緩沖,當(dāng)使用輸入緩沖時(shí),典型輸入阻抗為10GΩ;當(dāng)不使用模擬輸入緩沖時(shí),輸入阻抗(單位為Ω)由時(shí)鐘頻率與增益決定:
PGA的增益可以設(shè)置為2 n(n=0~7)。通過(guò)PGA的使用,可以用效提高A/D轉(zhuǎn)換結(jié)果的分辨率。如輸入信號(hào)幅度為40mV,設(shè)置PGA=128,最小分辨率可達(dá)75nV。PGA的模擬輸入可以通過(guò)設(shè)置ODAC寄存器進(jìn)行偏置,最大偏置為輸入范圍的一半。
ADC的轉(zhuǎn)換結(jié)果存儲(chǔ)在ADRESH(高字節(jié))、ADRESM(中字節(jié))、ADRESL(低字節(jié))中,配合總和寄存器和移位寄存器,可以方便地實(shí)現(xiàn)多次測(cè)量結(jié)果的累加和平均。總和寄存器是1個(gè)32位的值,被分為SUMR0(LSB)、SUMR1、SUMR2、SUMR3(MSB),可以進(jìn)行最大256次測(cè)量結(jié)果的累加和平均。當(dāng)然,要得到測(cè)量結(jié)果的平均值,應(yīng)當(dāng)使累加次數(shù)和平均次數(shù)一致。通過(guò)SSCON寄存器,可以設(shè)置成以下4種工作方式。
方式0:手動(dòng)累加,每次測(cè)量完畢,將測(cè)量結(jié)果寫(xiě)入總和寄存器,完成累加。
方式1:ADC自動(dòng)累加,根據(jù)SSCON中設(shè)置的累加次數(shù),自動(dòng)將測(cè)量結(jié)果累加到總和寄存器。
方式2:手動(dòng)求平均值,將總和寄存器中的值除以次數(shù),得到測(cè)量結(jié)果。
方式3:ADC自動(dòng)累加后求平均,根據(jù)SSCON中設(shè)置的累加次數(shù),自動(dòng)完成測(cè)量結(jié)果的累加后求平均值。
下面的示意代碼完成ADC高精度測(cè)量過(guò)程。單次測(cè)量結(jié)果可以通過(guò)直接讀取ADRESH、ADRESM、ADRESL得到。
//設(shè)置ADC
PDCON=0x0f7; //打開(kāi)轉(zhuǎn)換器,系統(tǒng)時(shí)鐘開(kāi)啟
ACLK=9; //設(shè)置ACLK頻率
ADMUX=0x08; //選擇第一通道正極性,AINCON負(fù)極性
ADCON0=0x30;//選擇片內(nèi)參考電壓1.25V,關(guān)閉緩沖器,PGA=1
ADCON1=0x41;//單極性,濾波器自動(dòng)模式,自校準(zhǔn)
for(i=0;i4;i++) //四個(gè)采樣周期自校準(zhǔn)
{while(!(AIE0X20));
resultl=ADRESL;
resultm=ADRESM;
resulth=ADRESH;}
SSCON=0XDB; //方式3,ADC自動(dòng)累加后求平均,采樣16次累加
While(!(AISTAT0X40));//等待16次采樣結(jié)果被累加完成
SMU=(SUMR3〈〈24〉+(SUMR2〈〈16〉+(SUMR18)+SUMR0; 存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理
評(píng)論