如何解决设置阈值以触发或停止对 C
我试图模拟我的数据采集卡何时以数据流模式获取数据并进行数据处理。 pi16Buffer
表示通道 1 和通道 2 混合的长波形数据,因此我使用 for
循环将数据 de-interleave
到 ch1Buffer[i]
和 ch2Buffer[i]
。其次,将 ch1Buffer
归一化为 ch2Buffer
,称它们为 Corrected
。根据{{1}}值,使用Corrected
触发if
值计算sum
。但是,我得到的都是Area under curve
,请检查我的示例代码是否有任何设置错误?我想从 0
中得到 3 个总和。
AUC
解决方法
这部分有一个错误:
i
当循环完成时,u32Size/2
的值为 ch1Buffer[i]
,并且没有分配给 ch1Buffer[i]
。换句话说 - 由于使用了 calloc
,ch2Buffer[i]
为零。这同样适用于 Corrected = 0.0 / 0.0; // not good
。
所以你在做:
for (i = 0; i < u32Size; i++) {
AUC += Corrected;
}
另外,这段代码
Corrected = ch1Buffer[i] / ch2Buffer[i];
很奇怪……你一直在循环中添加相同的值。
也许这行:u32Size
应该在 for 循环内。
顺便说一句:您将 sapply
元素分配给数组,但您只使用了其中的一半。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。