if (S_MUX_0 == 0 && S_MUX_1 == 0) //AIN0 Config = OS+MUX_A0+PGA+DR+COMP_QUE+MODE; if (S_MUX_0 == 0 && S_MUX_1 == 1) //AIN1 Config = OS+MUX_A1+PGA+DR+COMP_QUE+MODE; if (S_MUX_0 == 1 && S_MUX_1 == 0) //AIN2 Config = OS+MUX_A2+PGA+DR+COMP_QUE+MODE; if (S_MUX_0 == 1 && S_MUX_1 == 1) //AIN3 Config = OS+MUX_A3+PGA+DR+COMP_QUE+MODE;
Writebuff[0]=ADDRESS_W; Writebuff[1]=Pointer_1; Writebuff[2]=Config/256; Writebuff[3]=Config%6;
Readbuff[0]=ADDRESS_W; Readbuff[1]=Pointer_0;
Readbuff[2]=ADDRESS_R; }
//***************Write a Word***********************/ void WriteWord(void) {
int t;
Start(); //写入4个字节 do {
t=Write_N_Byte(Writebuff,4); }while(t==0); }
//***************Read Word***********************/ void ReadWord(void) {
int t;
Start(); //写入2个字节 do {
t=Write_N_Byte(Readbuff,2); }while(t==0);
Start(); //写入2个字节 do {
t=Write_N_Byte(&Readbuff[2],1); }while(t==0);
Read_N_Byte(Result,2); //读出2个字节
}
//***************ADS1115********************/ unsigned int ADS1115(bit S_MUX_0, bit S_MUX_1) {
InitADS1115(S_MUX_0, S_MUX_1); WriteWord(); Delay_ms_1(); ReadWord(); D_ADS=Result[0]*256+Result[1]; //转换的数字量
return D_ADS; }