您的位置 首页 解答

LabVIEW技巧系列(二)——并行写抵触

前些天在编一个程序时遇到了一个很诡异的问题,为什么说诡异呢,我们先看下面这个程序:简单编了一下,这个程序的大体意思是,把四路布尔

前些天在编一个程序时遇到了一个很怪异的问题,为什么说怪异呢,咱们先看下面这个程序:

简略编了一下,这个程序的大体意思是,把四路布尔型的毛病数组,存到一个一维数组的特定方位,程序是暂时编的,所以我们不要太介怀,首要阐明功用。可是不管怎么样,程序中没有引进随机数,所以输入是定值的情况下,输出也一定是定值。屡次运转后,我剪了两张有代表性的图:


仔细的朋友会发现,毛病输出数组中的后边有一位发生了改动,可是我的整个程序中却没有改动任何东西。这个问题从前困扰了我整整半响。最终在才发现,这是因为寄存器的写抵触导致的。这个不是windows的问题,而是整个电子,或许说是寄存器的特性,有编过FPGA的朋友或许知道,一个寄存器只能在一个进程中赋值,可是能够在许多进程中读取。这个随机值便是因为写操作权限抵触导致的。

解决方法很简略,变成次序结构就好~~

趁便提一句,一般情况下,固定输入发生随即输出的问题,都是读写文件导致的,一般遇到这种问题榜首先看文件读取程序有问题没,之后便是各种调用抵触。还有一种便是因为VI的复用,一个VI默许情况下只会加载一次,假如你调用时对某些变量没有赋值,这些变量就会默许为前次调用的值,然后发生伪随即值。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/jieda/214854.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部