NI LabVIEW,CVI,数据采集等产品讨论区

取消
显示结果 
搜索替代 
您的意思是: 

高手看过来,求教关于缓冲区的一个例子

这两天在做一个信号发生器的例子,想把循环产生的信号存到文件里。但发现每次新循环将以前的都冲掉了。然后就找了个例子,用缓冲区的,在 基础\局部变量与全局变量下, 叫 recent history buffer example.vi,看起来象面向对象编程的,但我真看不大懂,有以下几个问题:

1 那四个buffer用的是什么概念?编程时怎么做出来?

2 左边buffer满标志和两个循环用隧道连在一起,什么意义呢?

3 右边只有一帧的顺序结构是什么意思?

另外,把循环产生的数据累积存到文件里有什么更好的方法?

请高手指教!

0 项奖励
1 条消息(共 4 条)
4,121 次查看

1 那四个buffer用的是什么概念?编程时怎么做出来?

那四个buffer都是对同一个子VI进行不同的操作,而该子VI内部用到了移位寄存器(shift register),它可以理解为一种全局变量,是实现buffer功能的关键所在 

2 左边buffer满标志和两个循环用隧道连在一起,什么意义呢?

那是数据流控制的一种方式,用于保证在对buffer写和读之前先进行初始化

3 右边只有一帧的顺序结构是什么意思?

同2,保证在停止后清空buffer

 

2 条消息(共 4 条)
4,088 次查看
您所看的例子是采用FUNCTION GLOBAL创建的数据缓冲区,这是缓冲区的一种,LV的队列就是最好的数据缓冲区,不但可以实现缓冲区的作用,而且可以保证数据不丢失,并自动调节生产和消费的速度。
陈树学
QQ:276509891 .
EMAIL:CSXCS_366@126.COM
qq群:78561268 80754347 37591940
http://labview.weebly.com/
新书《LabVIEW实用工具详解》已经发售,敬请关注。
3 条消息(共 4 条)
4,071 次查看
Here is an example of Basic Functional Global Variable
Ian F
Since LabVIEW 5.1... 7.1.1... 2009, 2010, 2014
依恩与LabVIEW
LVVILIB.blogspot.com
0 项奖励
4 条消息(共 4 条)
4,064 次查看