TI论坛
直播中

李建设

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

ADS8688 SDO输出数据不正确 一直是0X0000FFFF的原因?怎么解决?


  • 目前状态:
    (1)ADS8688各引脚输入输出电压是正确的;
    (2)软件SPI通信波特率是500k;
    (3)软件上电后设置过程如下:复位命令—Manual命令 — 输入电压范围选择操作—NO_OP命令—
    想确认:
    (1)什么原因导致输出数据不正确;
    (2)帮忙确认原理图是否有问题~


    刚才又仔细看了一下示波器的波形,发现MOSI的数据是下降沿有效,但是MISO的数据是上升沿数据有效,不知道是为什么?

回帖(4)

林秀玲

2024-12-5 15:23:32
波形图上解码的结果, 跟你实际的数据一致吗?   是不是 MCU 的 SPI 配置问题?
举报

朱志兴

2024-12-5 15:23:40
看着MISO有数据,应该通讯成功了吧。读写寄存器失败了吗?你试着写寄存器,读寄存器,看看值是否一样?
举报

鲍淑君

2024-12-5 15:23:55
偶尔对的话,尝试降低SPI的波特率试试。因为只要读到数据,证明你的时序是没有问题的。
举报

吴湛

2024-12-5 18:01:16
根据您的描述,我们可以逐步分析可能导致ADS8688 SDO输出数据不正确的原因,并提供相应的解决方案。

1. 确认硬件连接和原理图:
   首先,我们需要确保硬件连接和原理图是正确的。请检查以下方面:
   a. 确保ADS8688的引脚连接正确,包括电源、地、SPI接口等。
   b. 确认原理图上的元件参数和布局是否符合ADS8688的数据手册要求。

2. 检查SPI通信:
   您提到软件SPI通信波特率是500k,我们需要确认这个波特率是否符合ADS8688的要求。请查阅数据手册,确认SPI通信的时钟频率是否合适。如果需要,可以尝试降低波特率,例如250k或125k,以提高通信稳定性。

3. 检查SPI时钟极性和相位:
   您提到MOSI的数据是下降沿有效,而MISO的数据是上升沿数据有效。这可能是因为SPI时钟极性和相位设置不正确。请查阅ADS8688的数据手册,确认正确的时钟极性和相位设置。通常,ADS8688的SPI时钟极性(CPOL)为0,时钟相位(CPHA)为0。您可以在软件中调整这些设置,以确保与ADS8688的要求一致。

4. 检查软件设置过程:
   您提到软件上电后设置过程如下:复位命令—Manual命令 — 输入电压范围选择操作—NO_OP命令。请确保这些设置步骤是正确的,并按照数据手册中的推荐顺序执行。如果需要,可以查阅数据手册,确认每个命令的参数和设置。

5. 检查示波器波形:
   您提到示波器波形显示MOSI和MISO的数据有效性不同。这可能是因为SPI时钟极性和相位设置不正确。请参考第3步,调整SPI时钟极性和相位设置,然后重新检查示波器波形。

综上所述,您可以按照以下步骤进行排查和解决:
1. 检查硬件连接和原理图。
2. 确认SPI通信波特率。
3. 检查SPI时钟极性和相位设置。
4. 确认软件设置过程。
5. 重新检查示波器波形。

希望这些建议能帮助您解决问题。如果问题仍然存在,请提供更多详细信息,以便我们进一步分析。
举报

更多回帖

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