关注:109 2014-01-19 19:51

什么是数据覆盖错误(Overwrite)与数据溢出错误(Overflow),怎样才能在使用NI-DAQmx的时候避免它们的出现?

已解决 悬赏分:0 - 解决时间 2024-05-19 07:52
  支持(0)  |   反对(0)   |  我来评论 2014-01-11 12:40
 

数据覆盖错误(Overwrite)是在进行环形缓存区采集的时候经常会遇到的错误之一。这个错误表示出现了数据丢失的情况,通常由于LabVIEW无法将PC缓存区中的数据尽快读出,而造成环形缓存区中现有的数据还没有来得及被应用开发环境(如LabVIEW)的内存读取就已经被后面的数据覆盖。可以通过增加PC缓存区的大小、加快读取速度或者降低采样率的方式避免数据覆盖错误(Overwrite)的出现。
数据溢出错误(Overflow)是另一个在进行环形缓存区采集的时候经常会遇到的错误。数据溢出错误(Overflow)通常比数据覆盖错误(Overwrite)更加严重,因为它显示了数据在进行读取之前就已经丢失。  数据溢出错误(Overflow)显示了板卡上的先入先出内存缓存区内存储的采集到的数据已经满了,无法放入新的采集数据。数据溢出错误(Overflow)显示了总线的传输速率小于设定的数据输入速率。可以使用直接内存存取(DMA)传输方式、降低数据输入速率或者减少共享PCI总线的仪器来防止数据溢出错误(Overflow)。