在读取寄存器ID时一直不成功,用示波器检查发现可以正常发送数据,但是接收数据方面一直没反应,DOUT引脚无变化,但是SCLK引脚和DIN引脚都正常,且CS 引脚在命令发送时一直为低,请问这是什么问题呢
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好,
但是接收数据方面一直没反应,DOUT引脚无变化
检查下主从SPI 通信电平是否兼容,即主控端发送信号的电压电平,ADS1299是否可以识别:
且CS 引脚在命令发送时一直为低,
对于ADS1299,CS pin 是其输入管脚,因此不是 ADS1299 这边的原因使其一直为低。CS pin 受SPI 主控端控制,建议检查主控端设置。
另外,下面FAQ分享给您,希望对您调试SPI 有帮助:
但是当我配置成内部测试方波后,dout引脚仍然没有任何输出,
您可以附上您配置的寄存器值吗,我看下?
同时测量下供电电压、参考电压、VCAPs电压是否正常:
dout引脚仍然没有任何输出,DRDY的时序也是正常的,
您是否发送了读取转换数据命令RDATA或者RDATAC?示波器看下读取命令是否正常?
如果我配置成了内部方波,那么我可以在模拟输出引脚看到波形么,
不可以,内部方波是芯片内部产生的模拟输入信号以代替ADC外部模拟输入。使用内部测试方波可以用来排查ADC模拟输入端的问题。
ADS_REG(WREG|CONFIG1,0x95);
Delay_us(1);
ADS_REG(WREG|CONFIG2,0XD0);//测试信号内部产生
Delay_us(1);
ADS_REG(WREG|CONFIG3,0XE0); //使用内部参考电压,
Delay_us(1);
ADS_REG(WREG|CH1SET,0X05); //amplified x1
Delay_us(1);
ADS_REG(WREG|CH2SET,0X05); //amplified x1
Delay_us(1);
ADS_REG(WREG|CH3SET,0X05); //amplified x1
Delay_us(1);
ADS_REG(WREG|CH4SET,0X05); //amplified x1
Delay_us(1);
ADS_REG(WREG|CH5SET,0X05); //amplified x1
Delay_us(1);
ADS_REG(WREG|CH6SET,0X05); //amplified x1
Delay_us(1);
ADS_REG(WREG|CH7SET,0X05); //amplified x1
Delay_us(1);
ADS_REG(WREG|CH8SET,0X05); //amplified x1
Delay_us(1);
我发送了RDATAC命令,并且DRDY可以顺利产生中断,但是Dout引脚就是数据一直为零