是因为波形图表X轴0点不变,图标一直刷新么? 采样速率是200个数每秒
0
|
|
|
|
zhihuizhou 发表于 2011-11-23 21:31
加入延时 或者数据没有清除
老师做的板卡往上位机传数据是200个数每秒(是叫200Hz吗?本人小白),我做的while循环,每次从串口取3个数,中低高位,然后根据公式转换成10进制,然后再有个公式转换成电压值,用波形图表显示出来,过一会就会出现“错误-1073807252”,是不是缓存不够数据溢出了
然后我每次取60个数,先将前三个转换成电压值(过程同上),然后做的for循环20次,没出现上面的情况,但是过段时间VI就死掉了,关掉labvieW后就出个小框“重置VI”,只能把串口拔掉,否则一直占用;
还有就是运行时间长了就会出现内存不足的情况,是不是因为我的波形图表X轴0点事固定的,图标一直刷新的原因呢,可是必须这样啊,否则做实验的时候得一直盯着
这是我改了几次出现的问题,感觉每次采3个数,一会就数据溢出;每次采60个延时50ms,不会数据溢出,但是会导致程序死掉(是不是调用子VI太频繁了);再有就是内存不足(这种情况多是采样结束后,10几分钟吧)
求解决方法!!
|
|
|
|
|
孤单北极熊 发表于 2011-11-23 21:44
[/td][/tr]
[/table][/td][/tr]
[/table]
是不是调用了一些API或者DOS命令不合理
|
|
|
|
|
孤单北极熊 发表于 2011-11-23 21:44
[/td][/tr]
[/table][/td][/tr]
[/table]
当您试图在LabVIEW中初始化一个非常大的数组的时候,有时候您会收到"内存已满(Memory is full)" 的错误。这通常由于LabVIEW不能够在RAM中开辟一个很大的连续的内存空间而造成的。正确的设置您的虚拟内存可以允许您通过使LabVIEW开辟连续的虚拟内存块来初始化您的数组。
在LabVIEW 8.5或以上的版本中,您可以在Windows下设置LabVIEW能够使用的虚拟内存的大小。参考 LabVIEW Help来获得LabVIEW如何使用虚拟内存的相关信息。
这个是NI 论坛上的解答 你试试看可以不
|
|
|
|
|
zhihuizhou 发表于 2011-11-23 21:55
当您试图在LabVIEW中初始化一个非常大的数组的时候,有时候您会收到"内存已满(Memory is full)" 的错误 ...
多谢老大,我用生产者和消费者循环做了一下,还可以,下午继续加上一些东西试试
|
|
|
|
|