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.
您好,
您使用同样的配置,仅对一个通道的方波信号采集,采集结果正确吗?
ADS1256内部仅集成了一路ADC,8路模拟输入是通过 Multiplexer多路复用器实现的,因此在对8路信号进行依次采样时,每采集一个sample都需要配置MUX reg来改变选通的通道,如下Figure 19所示读取时序图:
仅配置单通道,数据采样正确,符合输入的模拟信号波形
这说明应该不是寄存器配置问题,这应该是切换通道时时序出现了问题。
在切换通道时,参考说明手册中描述,30K采样点时,需要DRDY引脚信号出现五次低电平之后数据可用,但实际使用时,等待五次低电平后依然出现数据错误的情况
这里不是指“DRDY引脚信号出现五次低电平之后数据可用”,当设置30KSPS时,其实际DRDY周期是(1/30K)*5,因此您仅需检测到一个DRDY低电平后读取数据。
您好,更改DRDY的检测代码后,未出现预期的效果,您是否可以帮助我检查一下我的寄存器配置
在等待DRDY为低时,
写入STATUS寄存器为0x04,使高位在前,使用自校准,不使用缓冲
写入ADCON寄存器为0x00,放大倍数1倍
写入DRATE寄存器为0xF0,数据速度为30K
写入IO寄存器为0x00,引脚控制为0
再次等待低电平,写入0xf0,使其自校准
之后进行采样数据读取,等待DRDY低电平,写入0x51,0x00,0x08,0xfc,0x00,0x03,而后读取三字节数据,再次等待DRDY低电平,写入0x51,0x00,0x18,0xfc,0x00,0x03,而后读取三字节数据并记录为0号通道转化值,重复完成全部8通道读取
读写采用STM32F446单片机的硬件SPI,速率为1.40625MBit/S
感谢您的帮助
关于寄存器配置,我明天会具体看下。另外我找到下面链接有 ADS1256 example code,您可以先看下是否有帮助:
http://www.tide.ti.com/dcp/Examples/c5500.xml
寄存器写入使用WREG命令,读取寄存器使用RREG命令,在datasheet 36页有寄存器读写命令说明;
这个可能是TI 内网,我下载下来一个附在下面,您看下是否有帮助: