试试看这样的:
unsigned int readADC()
{
unsigned int data;
ADC_CS_LOW;
_NOP();
_NOP();
ADC_CLK_HIGH;
while(!(IFG1&UTXIFG0));
U0TXBUF=0x00;
IFG1&=~UTXIFG0;
while(!(IFG1&URXIFG0));
IFG1&=~URXIFG0;
data=U0RXBUF;
while(!(IFG1&UTXIFG0));
U0TXBUF=0x00;
IFG1&=~UTXIFG0;
while(!(IFG1&URXIFG0));
IFG1&=~URXIFG0;
data=(data<<8)|U0RXBUF;
ADC_CLK_HIGH;
_NOP();
_NOP();
ADC_CS_HIGH;
return data;
}
前提是你的这些IFG1、 UTXIFG0、 URXIFG0是匹配的,我不知道你使用的是哪个系列的片子。 |