2016-11-13 22 views
0

我正在尝试使用带有SPI的AD7091R-8 ADC芯片。 程序得到转换后的值的内部数据表中描述了并说:使用SPI上的AD7091进行模拟数字转换

  1. 复位芯片
  2. 带上CONVST线为低和600NS然后得到它高。
  3. 对于通道寄存器中已启用的通道(我启用了最后3个chans),开始对包含在2个字节中的数据进行计时。

因此,我将CONVST线路连接1ms然后等待1ms,然后通过启用CS,然后启用CS时钟16bytes,然后将CS拉高,开始计时数据。 在那些计时结束的16位数据中,我应该先进入第一个3位通道ID,然后我得到它,但只有第一个。其他2帧没有频道标识,它给出了假设某些东西坏了。

芯片启动CONVST和时钟输出数据自动增量ADC结果或以某种方式ADC通道结果应该增加吗?

有人请提供一些提示,说明在完成CONVST之后应该如何从ADC中恢复数据?

+1

应该移动到http://electronics.stackexchange.com/ – Swanand

回答

1

如果您查看数据表(通道序列器)第36页的图表,您会找到答案。 你需要做以下顺序:

  • 切换CONVST
  • 领带CS低,写SDI通道寄存器,忽略SDO,领带CS高

然后为您希望每个通道读:

  • 切换CONVST
  • 领带CS低,读取SDI,SDO上下一频道NOP regiter的操作,领带CS高