TI中文支持网
TI专业的中文技术问题搜集分享网站

ADS1198: ADS1198 读取ID 总是返回随机数

Part Number:ADS1198

这是我的程序

spi.send_recv(spi.SPI_1,string.fromHex(_WAKEUP))
sys.wait(100)
spi.send_recv(spi.SPI_1,string.fromHex(_RESET))
sys.wait(100)
spi.send_recv(spi.SPI_1,string.fromHex(_SDATAC))
while true do
    spi.send_recv(spi.SPI_1,string.fromHex("20"))
    spi.send_recv(spi.SPI_1,string.fromHex("00"))
    spi.send_recv(spi.SPI_1,string.fromHex("00"))
    sys.wait(100)
end

逻辑分析仪测得 发送的都是正确的数据

这是我接收到的数据

左侧是发送的数据 右侧是返回的数据

[0x02] C0
[0x06] C0
[0x11] C0
[0x20] 00
[0x00] 00
[0x00] 80
[0x20] 00
[0x00] 80
[0x00] 00
[0x20] 00
[0x00] 80
[0x00] 00
[0x20] EC
[0x00] 22
[0x00] DB
[0x20] 0B
[0x00] 80
[0x00] 00
[0x20] 80
[0x00] 00
[0x00] 80
[0x20] 00
[0x00] 80
[0x00] 00
[0x20] 00
[0x00] 00
[0x00] 00
[0x20] 00
[0x20] 00
[0x00] 00
[0x00] 00
[0x20] 00
[0x00] 00
[0x00] 00
[0x20] 00
[0x00] 00
[0x00] 00
[0x20] 00
[0x00] 00
[0x00] 00

我的 CLKSEL, PWDN,RESET 引脚 都是硬件上拉

我测的电压

AVDD 3.1V
AVSS 0V
DVDD 3.1V
GND 0V
VCAP1 1.2V
VCAP2 1.6V
VCAP3 4.9V
VCAP4 235mV

VREFP,VREFN 都是0V

请帮我看下是什么问题

Amy Luo:

您好,

ID读取不正确一般都是有上电顺序不正确造成的,请检查下是否符合 datasheet 中的上电顺序:

您是否按照datasheet Figure 58 流程初始化的设备?

确认上电顺序无误后,您可以附上您读取ID寄存器的SPI示波器时序图吗?我具体看下是否有误。

,

white white:

我的原理图CLKSEL上拉的, tPOR的时间怎么算

,

white white:

请问 上电顺序 怎么确定,我的原理图RESET引脚 上拉到DVDD的,另外DVDD和AVDD需要同时上电吗

一开机就全部上电了,然后延迟100ms后发送WAKEUP命令,然后再延迟100ms发送RESET这样可以吗

示波器我不太会使用

这是我的逻辑分析仪的spi时序图请您看一下

,

Amy Luo:

如果RESET引脚 上拉到DVDD,那么就需要发送reset命令来复位,建议按照数据表  Figure 58 流程来初始化设备。

赞(0)
未经允许不得转载:TI中文支持网 » ADS1198: ADS1198 读取ID 总是返回随机数
分享到: 更多 (0)