單片機(jī)與MAX111芯片的接口設(shè)計(jì)
MAX111模擬數(shù)字轉(zhuǎn)換器內(nèi)部采用自動校準(zhǔn)技術(shù)工作,無須外部元件就可達(dá)到±14位的分辨率,并能指出超量程位。工作電源電流僅640mA。它采用單片機(jī)+5V電源供電,可對±1.5V范圍內(nèi)的差分模擬信號或0~+1.5V范圍內(nèi)的單端信號進(jìn)行變換。
本文引用地址:http://cafeforensic.com/article/172071.htm1、MAX111內(nèi)部移位寄存器
串行數(shù)據(jù)傳遞時(shí)由16位靜態(tài)移位寄存器完成。在數(shù)據(jù)傳遞操作期內(nèi)移入的16位控制字D0~D15用來控制模數(shù)轉(zhuǎn)換器的各種功能。輸入的D0~D15各位的功能如下:
D15位:N0-OP為允許/禁止控制字向控制功能寄存器傳遞。當(dāng)N0-OP為高電平時(shí),允許向控制寄存器傳遞:當(dāng)N0-OP為低電平時(shí),禁止傳遞。ADC功能原配置保持不變,即當(dāng)CS返回高電平時(shí),也開始新的A/D轉(zhuǎn)換。
D14、D13、D6、D5:僅用于測試,通常為低電平。
D12、D11、D10、D9:轉(zhuǎn)換時(shí)間控制位。全為低電平時(shí),D8、D7為時(shí)鐘分頻位,當(dāng)頻率為500kHz時(shí),對應(yīng)轉(zhuǎn)換時(shí)間為250ms。
D4:輸入通道選擇。為“0”,選擇通道1;為“1”選擇通道2。
D3:CAL為增益校準(zhǔn)位,高電平時(shí)選擇增益校準(zhǔn)方式。
D2:NUL內(nèi)部偏置0位,高電平選擇偏置零方式。
D1:PDX振蕩器“掉電”方式。
D0:PD模擬“掉電”。
當(dāng)ADC未經(jīng)校準(zhǔn)時(shí),增益誤差的典型值為2%。為了減小誤差,要經(jīng)過三步校準(zhǔn)過程,其方法是向控制寄存器送如下控制字:
第一步:D15~D0=1000000XX00X1100,即D3=1,D2=1。通過把內(nèi)部ADC輸入端短接至REF-來完成一次偏置校正變換,其變換結(jié)果存入寄存器,D12~D9可重新選擇。
第二步:D15~D0=1000000XX00X1000,即D3=1,D2=0。把零寄存器的內(nèi)容作為起始值,完成一次增益校準(zhǔn)變換,其結(jié)果存入校準(zhǔn)寄存器。
第三步:D15~D0=1000000XXX00X100,即CAL=0,NUL=1。把內(nèi)部ADC輸入按照選擇通道完成一次零偏置變換。下一次操作(相同控制字)將完成第一次ADC變換。
2、A/D轉(zhuǎn)換的時(shí)序
MAX111的轉(zhuǎn)換時(shí)序如圖1所示。由時(shí)序圖可以看出,當(dāng)CS=0時(shí)允許輸入、輸出數(shù)據(jù)。DOUT輸出的第一個(gè)數(shù)據(jù)為POL(符號位),接著是OFL(超量移位),后面依次為A/D數(shù)據(jù)最高位D13到最低位D0。
DIN輸入控制字,先是最高位D15,依次到最低位D0。輸入、輸出的變化在SCLK為下降沿時(shí)進(jìn)行串行移位,因此在單片機(jī)編程時(shí)必須注意在SCLK高電平或低電平時(shí)將DOUT的數(shù)據(jù)讀出;輸入時(shí),先向DIN發(fā)送新的數(shù)據(jù),然后再給SCLK一個(gè)高低變化的電平,這樣才能準(zhǔn)確地傳送信號。SCLK變化16次后完成一次輸入、輸出。
3、AT89C51和MAX111的接口設(shè)計(jì)
AT89C51采用P2口的P2.0~P2.4與MAX111相接(圖2)。如不用差動輸入可將REF-和IN1-接地。
由于采用了AT89C51單片機(jī),P2口可以不再作為高8位地址線,而作為一般的I/O接口使用。下面給出A/D采樣程序供參考:
評論