这两天在做一个信号发生器的例子,想把循环产生的信号存到文件里。但发现每次新循环将以前的都冲掉了。然后就找了个例子,用缓冲区的,在 基础\局部变量与全局变量下, 叫 recent history buffer example.vi,看起来象面向对象编程的,但我真看不大懂,有以下几个问题:
1 那四个buffer用的是什么概念?编程时怎么做出来?
2 左边buffer满标志和两个循环用隧道连在一起,什么意义呢?
3 右边只有一帧的顺序结构是什么意思?
另外,把循环产生的数据累积存到文件里有什么更好的方法?
请高手指教!
1 那四个buffer用的是什么概念?编程时怎么做出来?
那四个buffer都是对同一个子VI进行不同的操作,而该子VI内部用到了移位寄存器(shift register),它可以理解为一种全局变量,是实现buffer功能的关键所在
2 左边buffer满标志和两个循环用隧道连在一起,什么意义呢?
那是数据流控制的一种方式,用于保证在对buffer写和读之前先进行初始化
3 右边只有一帧的顺序结构是什么意思?
同2,保证在停止后清空buffer