| 
 
| 求大神看看这ads1115的程序是不是有什么问题,怎么改都出不了结果。 unsigned char Initdata[4]={0};
 
 /*******************Config寄存器*********************/
 void Confige1115A()
 {
 unsigned char i=0;
 Initdata[0] =0x90;        // 地址 + 写命令
 Initdata[1] =0x01;       // 指向配置寄存器
 Initdata[2] =0x42;     // 配置字高字节
 Initdata[3] =0xE3;    // 配置字低字节
 SCL_H;
 start();
 for(i=0;i<4;i++)
 {
 Send1byte(Initdata[i]);
 _NOP();
 
 }
 stop();
 }
 /************指向转换结果寄存器***************/
 void Pointregister1(void)
 {
 unsigned char i=0;
 Initdata[0] =0x90;           // 地址 + 写命令
 Initdata[1] =0x00;            // 指向转换结果寄存器
 SDA_out;
 SCL_H;
 start();
 for(i=0;i<2;i++)
 {
 Send1byte(Initdata[i]);
 
 }
 stop();
 }
 /**************读取转换结果***************/
 unsigned int Read1115A(void)
 {
 unsigned int   ResultL,ResultH;
 unsigned int    Result;
 SCL_H;
 start();
 Send1byte(0x91);
 ResultH=Read1byte();
 ResultL=Read1byte();
 stop();
 Result=ResultH*256+ResultL;
 return   Result;
 }
 /***********模拟量采集转化为数字量***********/
 unsigned int  Ad_1115A()
 {
 unsigned long result_gd;
 Confige1115A();
 Pointregister1();
 result_gd=Read1115A();             //结果存储AD转化值
 return   result_gd;
 }
 
 | 
 |