现在我的问题比较严重,我按照datasheet上的时序编写的程序,但是返回回来的数据不对。
我大概描述一下我的思路,请大神解答。
现在我上电之后先进行REST,然后经过延时之后发送同步指令,然后经过延时发送停止连续转换指令,然后经过延时发送读取数据指令。结果返回的都是0.
我现在可以用指令读取寄存器,都是默认值,但是如果前面加了写指令操作时候,后面就读到的也全都是0。
现在很头疼,找不到下手的地方,我想用按命令读数模式。还有比较大的疑问是SYNC,这个是不是只有在同步的时候需要拉高,以后就一直就低电平就行了呢?
qiong wu1:
为什么DRDY始终是高? 不管是RESET复位之后,还是发送RDATA指令之后,全都不变低呢?
我用的是EVM开发板
MichaelSheep:
回复 qiong wu1:
1 我认为理论上应该是nDRDY变低了以后再去读数据。因为这个引脚功能是提醒MCU数据已经转换完成,可以读了。
2 其他的引脚SYNC PWDN RESET这三个引脚可以使用示波器测量下和手册中提到需要的电平过波形不一样,先确保这些引脚正确以及时序正确。
3 如果还不行的话,是否能提供一些实际测量的时序图?以供分析,包括SPI, CLK , SYNC, PWDN, RESET等引脚。