MAX194在ARM單片機系統(tǒng)中的應用
void MSpiIni(void)
{ SPI_SPCCR = 0x0B; // 設置SPI時鐘分頻, SPI時鐘為1 MHz
SPI_SPCR = 0x20; // 設置SPI接口模式,MSTR=1,CPOL=0,CPHA=0,LSBF=0
IOCLR = MAX194_UP; //關斷輸入
}
uint8 MSendData(uint8 s_data,uint16 r_data)
{ uint32 temp;
IOSET=Max194_UP; // 打開輸入
IOCLR = MAX194_CONV; // 啟動轉(zhuǎn)換
Delay(10); // 延時 10us
IOSET = MAX194_CONV;
do
{ temp=IOPIN;}
while(tempMAX194_EOC) ; // 轉(zhuǎn)換結(jié)束
IOCLR = MAX194_CS;// 片選
SPI_SPDR = s_data; // 發(fā)送數(shù)據(jù)0xFF
while( 0==(SPI_SPSR0x80) ); // 等待SPIF置位,即等待數(shù)據(jù)發(fā)送完畢
r_data= (uint16)SPI_SPDR; //讀取第一個字節(jié)數(shù)據(jù)
r_data=6; //調(diào)整數(shù)據(jù)
SPI_SPDR = s_data; // 發(fā)送數(shù)據(jù)0xFF
while( 0==(SPI_SPSR0x80) ); // 等待SPIF置位,即等待數(shù)據(jù)發(fā)送完畢
r_data= r_data|(SPI_SPDR>>2); //讀取第二個字節(jié)數(shù)據(jù)并調(diào)整
IOSET = MAX194_CS;
IOCLR = MAX194_UP; //關斷輸入
}
4 結(jié)束語
在使用MAX194中應盡可能把數(shù)字地和模擬地分開。如果模擬電源和數(shù)字電源來自同一個電源,那么用一低值電阻(10 Ω)將數(shù)字電源和模擬電源隔離。MAX194內(nèi)部的高速比較器對VDDA和VSSA的高頻噪聲很敏感,應該用0.1 μF與1 μF或10 μF的并聯(lián)電容將電源旁路接到模擬地。
用于數(shù)據(jù)采集系統(tǒng)的A/D轉(zhuǎn)換芯片有很多,新品更是層出不窮,數(shù)據(jù)采集的速度和精度等性能也在不斷提高,在應用中不但應根據(jù)實際情況采用性價比較高的A/D轉(zhuǎn)換芯片,而且應選用高性價比的處理器(如本文所選LPC2104),這樣才能提高整個系統(tǒng)的性能。本文引用地址:http://butianyuan.cn/article/171765.htm
評論