/*============================================================ tlc2543 模数转换器驱动程序 ============================================================== 参数定义示例: sbit AD_CLOCK=P1^7; sbit AD_DIN=P1^6; sbit AD_DOUT=P1^4; sbit AD_CS=P1^5; 程序调用说明: ADC(选通输入通道号0~10之间整数) 调用示例: main(){ int result; result=tlc2543(10); } =============================================================*/ unsigned int ADC(unsigned char channel) { unsigned int dataout=0; unsigned int i; AD_CLOCK=0; AD_CS=0; channel<<=4; for(i=0;i<12;i++) { AD_DIN=(bit)(channel&0x80); AD_CLOCK=1; delay(1); AD_CLOCK=0; delay(1); channel<<=1; } AD_CS=1; delay(1); AD_CS=0; for(i=0;i<12;i++) { if(AD_DOUT) dataout|=0x01; AD_CLOCK=1; delay(1); AD_CLOCK=0; delay(1); dataout<<=1; } AD_CS=1; dataout>>=1; return(dataout); }