TI论坛
直播中

王敏

8年用户 1528经验值
私信 关注
[问答]

求助,关于ADS1258的SPI通信的疑问求解


  • 各位,遇见个奇怪的情况,我同样的程序在一块板子上正常运行,再生产了几块板子,程序运行后,ads1258初始化不成功,焊接是没问题的
    现在1258的情况是,读他的寄存器在没有上拉的情况下,回读的都是0x00,可是开始转换后,根据drdy引脚我去读取转换后的数据,又有数据读出(但不是我想要的数据)我感觉应该是他没有收到我发给他的命令,我怀疑是ADS1258的spi口线死掉了,我的程序中spi口线复位上采取的是先拉高再拉低,然后再通信的方式,请问spi口线复位与cs拉高的时间有关系吗?cs拉高的时间我几us和八九百us都试过了,还是没效果,示波器看了时序,是没问题的,请教各位了,帮帮忙吧,很急
    着急出货的, 这次遂了,太诡异了。我看还有一种sclk长期不动的方式复位spi口,这种方式还没试?问下,这些种命令在复位spi上有区别吗?另外我的
    硬件上reset引脚是接死的,所以不能硬件复位,我发送过复位命令0xc0,也没效果。

回帖(2)

康辅佑

2025-2-10 14:35:53
CS高电平延时时间加大到了10ms,拉低后也延时10ms后再开始通信,spi通信正常。
举报

郭中

2025-2-10 17:15:53
根据您的描述,您在使用ADS1258时遇到了一些问题,特别是在SPI通信方面。以下是一些建议和可能的解决方案:

1. 检查硬件连接:确保所有连接都是正确的,包括SPI线、电源和地线。检查是否有短路或断路的情况。

2. 检查SPI时钟频率:ADS1258的SPI时钟频率范围是100kHz至6MHz。请确保您的SPI时钟频率在这个范围内。过高或过低的时钟频率可能会导致通信问题。

3. 检查SPI模式:ADS1258支持SPI模式0和模式3。请确保您的SPI模式设置正确。

4. 检查CS信号:您提到了CS信号的拉高时间。通常情况下,CS信号的拉高时间应该足够短,以便在SPI通信期间保持低电平。您可以尝试将CS信号的拉高时间设置为更短的时间,例如1us或2us。

5. 检查SPI通信协议:请确保您的SPI通信协议与ADS1258的要求一致。这包括发送正确的命令、地址和数据。

6. 检查ADS1258的电源:请确保ADS1258的电源电压和电流满足其规格要求。不足的电源可能会导致设备无法正常工作。

7. 检查ADS1258的固件:请确保您的ADS1258固件是最新的,以避免可能的兼容性问题。

8. 使用示波器检查SPI信号:使用示波器检查SPI信号,以确保信号完整性和时序正确。

如果以上建议都无法解决问题,您可以考虑联系ADS1258的制造商或技术支持,以获取更专业的帮助。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分