您好!
我有一个板载 ADS1261、它应该能够执行两个测量、一个具有交流激励、另一个没有交流激励。 现在、在测量不使用交流激励的输入通道时、我仍然希望在另一个测量中使交流激励信号保持活动和稳定。 这是可行的吗? 经过简要测试、例如、更改 INPMUX 寄存器似乎会对交流激励信号产生干扰。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
感谢您的快速回答!
我需要一些时间来绘制原理图的相关部分。 请在下面找到代码和相应的 ACX2波形:
/*初始化*/
writeSingleRegister (REG_ADDR_PGA、PGA_GAIN_128);
writeSingleRegister (REG_ADDR_MODE0、MODE0_DR_7200_SPS | MODE0_SINC1);
writeSingleRegister (REG_ADDR_MODE1、MODE1_CHOP_2WIRE_ACX | MODE1_CONVRT_CONTINUE | MODE1_DELAY_0_us);
/*测量*/
while (1){
regData =(INPMUX_MUXP_AIN4 | INPMUX_MUXN_AIN5);
writeSingleRegister (REG_ADDR_INPMUX、regData);
status = waitForResult();
if (status == true) printf ("ADS1261超时!\r\n");
regData = readSingleRegister (REG_ADDR_STATUS);
if (regData & 0x04){
采样= ReadData (NULL、NULL、NULL);
}
计算(样本);
}
这正常、激励波形正常。
此外、这种方法还可以:
/*测量*/
while (1){
regData =(INPMUX_MUXP_AIN4 | INPMUX_MUXN_AIN5);
writeSingleRegister (REG_ADDR_INPMUX、regData);
status = waitForResult();
if (status == true) printf ("ADS1261超时!\r\n");
regData = readSingleRegister (REG_ADDR_STATUS);
if (regData & 0x04){
采样= ReadData (NULL、NULL、NULL);
}
计算(样本);
ads1261_enable_internal_reference ();
writeSingleRegister (REG_ADDR_PGA、PGA_DEFAULT);
uint8_t regData =(INPMUX_MUXP_AIN6 | INPMUX_MUXN_AIN7);
}
而这不起作用:
/*测量*/
while (1){
regData =(INPMUX_MUXP_AIN4 | INPMUX_MUXN_AIN5);
writeSingleRegister (REG_ADDR_INPMUX、regData);
status = waitForResult();
if (status == true) printf ("ADS1261超时!\r\n");
regData = readSingleRegister (REG_ADDR_STATUS);
if (regData & 0x04){
采样= ReadData (NULL、NULL、NULL);
}
计算(样本);
ads1261_enable_internal_reference ();
writeSingleRegister (REG_ADDR_PGA、PGA_DEFAULT);
uint8_t regData =(INPMUX_MUXP_AIN6 | INPMUX_MUXN_AIN7);
writeSingleRegister (REG_ADDR_INPMUX、regData);
}
您好、Arnie、
感谢您提供相关信息、请告诉我何时可以共享方框图(或原理图)。 如果您不想公开分享原理图、可以将鼠标悬停在我的姓名(Bryan Lizon86)上、然后点击"请求友谊"。 这将允许我们通过私人消息共享信息
关于毛刺脉冲:您知道在寄存器写入期间的哪个点发生这种情况吗? 您能否探测 DIN 引脚和 ACX 引脚以查看它们何时重合? 正如我所能说的那样、干扰只是一个信号为低电平时的一个时间缩短(另一个 ACx 引脚上是否会发生同样的情况、在这种情况下干扰会缩短信号为高电平的周期?)
此外、您在该示波器屏幕截图中探测哪个通道?
布莱恩
您好、Arnie、
很抱歉、我上周错过了您的帖子
实际上、您对写入 INPMUX 寄存器的操作是正确的、我只是想查看示波器快照进行确认。 写入该寄存器会自动重新启动转换过程、并且此操作不能被覆盖(这是固有的器件行为)。 由于交流激励时序与 ADC 转换过程同步、因此这就是器件的行为方式。
唯一的其他选项是手动控制 GPIO 以执行切换、而不是依赖 ACx 模式执行此功能。 如果您想进一步探索该选项、请记住、ACX 模式会在内部自动反转 VREF 信号、使其始终为正。 您必须手动执行此附加切换。
如果您有任何疑问、请告诉我
布莱恩