已回答假定已回答

ad7193读取数据感觉被放大了一倍

Any 在 2016-9-3 詢問的問題
最後回覆由hpkamen於2016-9-7提供

用stm32和ad7193通讯,电路参考CN0287.

读取四路Pt100对应的电阻值。四路之间是轮流切换。

原来用IO口模拟SPI和ad7193通讯。

现在改为stm32的硬件SPI,结果读取第一路电阻值时,偶尔出现阻值被放大一倍的情况,其他三路则正常。

程序流程基本是这样的:

1通过SPI发送数据,控制ADG738的第一路导通;

2通过SPI读取AD7193配置寄存器数据,

  清掉通道选择对应位的数据,

  然后将对应位写入相应通道号,

  通过SPI写入AD7193配置寄存器,

  通过SPI写入AD7139模式寄存器,设置单次转换;

3等待MISO电平被拉低,然后通过SPI读取AD7193数据寄存器值;

  开始下一个通道...

 

用示波器测量了SCLK和MOSI波形,对应的部分数据位:

010000000

 

01011000    读数据寄存器

結果