ADI 技术
直播中

李霞

7年用户 1230经验值
私信 关注
[问答]

AD7177-2输出速率200Hz,CPU定时器也是5ms的,请问会不会存在不匹配的问题?

        使用AD7177-2,四个通道轮训采集,采样率200Hz,相当于每个通道50Hz,ad芯片配置成连续转换模式。定时器中断设置为5ms一次,拉低片选,读取数据(低优先级中断)。MISO配置成外部中断,CPU在外部中断中读数据(优先级高)。现在的问题是,发现偶尔丢失数据,有时一个周期中并不是50个采样点,有时只有48或49个(约2s出现一次丢数据)。请问怎么回事?
         另外,根据手册,AD7177-2输出速率200Hz,CPU定时器也是5ms的,会不会存在不匹配的问题?

回帖(6)

李霞

2018-8-10 08:54:01
丢数的时间间隔基本固定,大约2s。个人感觉,AD7177输出速率200Hz,CPU读取速率也是200Hz,二者是不同步的,万一时间久了,CPU读取的速率刚好超过了AD的输出速率,或者处于林杰点上,是不是就要丢数了?有什么好办法解决该问题吗?
举报

郝思雨

2018-8-10 09:05:52
会出现不同步的问题,片选能够一直拉低么?
或者定时器中断周期小于5ms,宁可多读也不漏读。
举报

李霞

2018-8-10 09:11:43
引用: 深圳王先生 发表于 2018-8-10 09:05
会出现不同步的问题,片选能够一直拉低么?
或者定时器中断周期小于5ms,宁可多读也不漏读。

你好,谢谢回复,我使用了3片器件共用一个SPI,片选无法一直拉低。
定时器中断小于5ms?岂不是很容易两次采样会采到同一个值?采集正弦波的话会有明显台阶,不连续。
举报

郝思雨

2018-8-10 09:26:14
引用: zhangminmin 发表于 2018-8-10 09:11
你好,谢谢回复,我使用了3片器件共用一个SPI,片选无法一直拉低。
定时器中断小于5ms?岂不是很容易两次采样会采到同一个值?采集正弦波的话会有明显台阶,不连续。

定时器中断小于5ms, 进中断后并不是直接读取数值,而是通过读取状态寄存器,先判断新的转换是否完成,如果已经完成,再读取数据寄存器。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分