AD7606调试笔记:采集多路不正常,少采集几路就正常

AD7606调试笔记:采集多路不正常,少采集几路就正常了

问题描述:

最近在调试嵌入式比赛的作品,用单片机同时带动两个7606同步采集的过程中,发现采集8+3路信号的时候,后3路数据不对,当采集8+2路时正常。

查错方案:

处理速度不够

当然首先怀疑是速度不够快,我使用的条件是32k采样率,一次采集至多只能花费32us。DEBUG后,发现,实际上只用了约17us,对于32us的要求来说绰绰有余,说是快很多也毫不过分。我电赛时为了克服HAL库的缓慢,能高速得带动7606,专门用IO口模拟SPI驱动的7606。

排除速度问题。

时序不对

选用的是4倍过采样,上升沿读取,也就是转换期间读取。数据手册上描述如下:

请添加图片描述

请添加图片描述

于是有疑问了,会不会是我采集的时间太长,在BUSY的高电平持续时间内没有读取完成?当BUSY下降沿到来时,寄存器数据更新了,我此时正在读取,数据自然就出错了。很有可能,开始检验。

锁定时序问题,通过DEBUG查看,前8个通道的数据花费了13.34us,后3路花费了4us左右。

请添加图片描述

我使用的是4倍过采样率,转换时间,也就是BUSY持续高电平的时间是16-18us。
请添加图片描述

嗯?!16us,我的采样时间是17us多,正好赶上了BUSY的下降沿。

请添加图片描述

如上是错误的时序。

解决办法

延时

读取3个通道和读取8个通道之间,加入延时。如下图。延时5us就可以了。
请添加图片描述

这样解决会有一个问题,就是8路数据和3路数据不再是同步的了。这不满足要求呀。

转换完成读取

将触发改成BUSY的下降沿触发,这样就改成了转换完成再去读取。

请添加图片描述

经过测试,数据正确。可是大家一定也注意到了,我在读取后3路时,BUSY又被拉高了,开始新的一轮测量。这样是否会影响呢?根据我测到的数据来看是不影响的。那么他是否会影响呢?

是否影响?

我们观察数据手册上的时序图。BUSY上升沿前,是完成了采集的。但是也没有指明是否可以这样测。不如来做个实验验证验证。

请添加图片描述

我让我手上的两个7606,去采集16路信号。采集时间如下,用了26.6us。32k采样率下,一个周期31.25us,BUSY高电平16us,低电平约15us,下降沿开始采集,采集了26.6us,明显已经进入了下一个周期的BUSY的高电平。严重超时。

请添加图片描述

开启采集,观察数据。数据正常!看来采集是可以持续到下一个周期的BUSY高电平。

结论

  • 转换完后读取数据:上面的问题,基本上是由于采用了转换期间读取导致的。转换期间读取,只能在BUSY高电平下进行,比如这里的16us,有时间的限制。改用下降沿触发,就可以在一整个周期内读取信号,也就是这里的31.25us。
  • 注意时序:叮嘱自己一下。

未若头发因风起

  • 如果觉得本文章对你有作用,请大方的点个赞吧
  • 20
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
### 回答1: 串行采集AD7606多路信号出错可能是由多种因素引起的。以下是一些常见的原因和解决方法: 1. 信号线连接错误:检查AD7606芯片和外部输入信号之间的连接线是否正确连接,确保每个信号都与正确的输入通道相连。 2. 信号干扰:在进行串行采集时,外部电磁干扰可能导致信号失真。可以考虑添加屏蔽线或使用滤波器来降低信号干扰。 3. 时钟同步问题:在AD7606中,时钟同步非常重要。确保时钟输入信号与其他相关电路同步,并且时钟频率符合要求。可以使用专用的时钟发生器来确保时钟信号的准确性。 4. 电源噪声:稳定的电源供应对于AD7606的正常运行至关重要。检查电源电压是否稳定,并且在供电线路中添加电源滤波器以减电源噪声。 5. 外部元件质量问题:AD7606需要与其他元件正常配合工作。检查外部电容器、电阻器和连接器等元件是否工作正常,并确保它们的质量符合要求。 6. 软件编程错误:在进行串行数据采集时,需要正确配置和控制AD7606芯片。检查软件编程是否正确,并确保正确地处理和存储数据。 如果以上步骤仍然不能解决问题,建议参考AD7606芯片的数据手册和相关应用笔记,寻求更多的技术支持,以帮助解决串行采集AD7606多路信号的问题。 ### 回答2: 串行采集AD7606多路信号出错可能是由于以下几个原因导致的: 1.硬件问题:AD7606芯片本身有可能出现故障或损坏,导致信号采集出错。可以尝试更换芯片或者检查芯片连接是否良好,确保信号可以正常传输。 2.时序错误:AD7606的串行采集需要严格的时序控制,如时钟信号、复位信号等。如果时序设置不正确,可能导致数据采集出错。需要仔细检查时序控制电路设计是否正确,并确保时序信号的稳定性。 3.电源问题:AD7606需要稳定的电源供应才能正常工作。如果电源波动过大或供电不稳定,可能导致信号采集出错。建议检查电源线路设计和电源质量,并确保电源稳定性。 4.噪声干扰:AD7606是高精度的采集芯片,对噪声干扰敏感。如果采集信号存在干扰或噪声,可能导致AD7606采集出错。可以通过增加滤波电路、降低信号传输距离或使用屏蔽线缆来减干扰。 5.软件设置错误:AD7606的配置寄存器需要正确设置才能采集到正确的信号。如果软件设置错误,可能导致信号采集出错。建议检查软件配置是否正确,并按照数据手册提供的信息进行设置。 综上所述,串行采集AD7606多路信号出错可能是由于硬件问题、时序错误、电源问题、噪声干扰或软件设置错误引起的。需要逐一排查可能导致问题的原因,从而找到解决方案并进行修复。 ### 回答3: 串行采集AD7606多路信号出错可能有以下几种原因: 1. 硬件故障:首先需要检查AD7606串行采集模块的硬件连接是否正确。检查电源供电是否稳定,时钟信号是否正确,数据线是否连接紧固。若发现连接问题或者损坏的零部件,需要修复或更换。 2. 噪声干扰:串行采集信号时,可能会受到噪声的干扰。噪声干扰可以通过将AD7606模块和信号源之间的距离尽量缩短,使用屏蔽线缆来减。同时,还可以添加滤波器来滤除高频噪声。 3. 信号源问题:如果采集信号出错,可能是信号源本身存在问题。检查信号源的输出是否正常,对信号源进行检修或更换。 4. 采集参数设置错误:AD7606的串行采集参数设置需要正确,包括采样率、增益、参考电压等。请确保采集参数的设置与应用要求相匹配。 5. 驱动程序或程序逻辑错误:检查驱动程序或相关的软件逻辑,确保没有错误。查看代码是否正确实现了AD7606的串行数据采集协议,是否正确处理了数据接收和存储。 在解决AD7606串行采集多路信号出错时,可以按照以上几个方面进行检查和排除。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值