好吧,我又来问关于ADS1253的问题了,希望能得到TI工程师的帮助,谢谢!
在ADS1253的规格书中,有三种工作模式:DOUT/DRDY ; SYNCHRONIZING MULTIPLE CONVERTERS ;POWER-DOWN MODE
在我的程序中,只用到第一种工作模式:DOUT/DRDY,需要采集4路ADC数据,按照规格书中的时序图及项目需求,个人理解如下:
步骤①:先选择通道0,然后读引脚9:DOUT/DRDY 的数值,它肯定会经历一个t4(约为8us的高电平) , t2(2us的低电平) ,t3(2us的低电平) 的data ready(DRDY Mode)模式,在获取这个模式之后,读取24位寄存器DOR的数据,读取完第一次数据之后,重新捕捉data ready模式,继续读取第二个24位的数据,直到在该通道读取了50个数据。
步骤②:然后改变CHS0,CHS1切换通道,然后读取引脚9:DOUT/DRDY 的数值,参考附图下图FIGURE 12:Multiplexer Operation,引脚DOUT/DRDY会保存高电平输出t18(大约665us),
程序捕捉t18该状态,然后循环步骤①,从第二通道读取50个数据。
步骤③:循环执行上述步骤①和②,直到每个通道都读取50个数据。
使用的是外部CLK:3.072MHz,使用示波器能观察到晶振已正常工作;使用IO口模拟SCLK和DOUT/DRDY引脚。
现如今遇到的问题是:
在一个通道内,每次读取一个数值时,采样值是正确的。但在该通道内读取第二个数据时,无法捕捉到data ready(DRDY Mode)模式中的t4时刻。
读取data ready(DRDY Mode)模式的代码见下图:
读取24位数值的代码见下图: