求助!28335的SPI口读取ADS131E06的ID问题,困扰好几天了
时间:10-02
整理:3721RD
点击:
目前在调试一个数据采集板,用TMS320F28335和ADS131E06,但是SPI口读取ADS131E06的ID始终读不到!
硬件说明:ADS131E06的DVDD=3.3V,START下拉,/RST上拉,SPI口连28335的GPIO54-57。
程序中28335对ADS131E06的读ID的时序说明如下:START脚下拉,保证一上电时,ADS131E06不转换,上电后,在仿真状态下,LOAD程序,然后准备仿真程序(这几步离上电已经超过至少10S)。在程序中,先对START脚拉低处理,然后发送ADS131的复位序列,之后等待一段时间(手册上要求18tclk以上,实际我们保证此时间远大于要求时间),然后发送读ID的命令序列(0x20 0x00),然后按照要求,等待至少4tclk时间,再发送8bit的SCLK,但始终是读不到ADS131的ID,监视到MISO口线上一直是低电平,不知道是什么问题。SCLK速率目前设置在2.88MHz左右,SPI口的时序也按照ADS131E06的要求配置了,我把复位及SPI读ID的波形图发上来,请大虾们帮忙看看,到底还有什么地方不对,谢谢。
TI的大虾们,有人能帮忙答复一下吗?
从你的描述看,ADS131E06没有响应输入的指令。推荐使用示波器抓一下DIN及时钟的时序图,并与datasheet中第8页上的时序对比一下。
注意ADS131E06是在时钟的下降沿锁存DIN上的数据。
问题已经找到,是少发一个SDATAC命令!这芯片设计的比较妖~
不管怎样,ID读到了,感谢回复!
你好,你最后ADS131工作正常了吗,我的为什么更改寄存器默认值之后就不能工作了呢?