反馈节点:在循环之间保存数据
- 更新时间2025-08-27
- 阅读时长2分钟
与移位寄存器类似,反馈节点在循环完成一次后存储数据,然后将数据发送至下一次循环。下一次循环将读取数据,将新值写入数据,再将新的数据再次传递到循环中。该过程再循环完成后中止。
上一个程序框图中的反馈节点在第一次执行后被初始化,故每次循环后值都不改变。在该情况下,将初始化接线端连接至反馈节点,如下面程序框图所示。
| 第一次执行 | 第二次执行 | ||
|---|---|---|---|
| 迭代 | 结束值 | 迭代 | 结束值 |
| 0 | 3 | 0 | 3 |
| 1 | 4 | 1 | 4 |
| 2 | 5 | 2 | 5 |
| 3 | 6 | 3 | 6 |
如初始化接线端未连接一个初始值,则反馈节点的行为将有所不同,如下所示。
| 第一次执行 | 第二次执行 | ||
|---|---|---|---|
| 迭代 | 结束值 | 迭代 | 结束值 |
| 0 | 1 | 0 | 5 |
| 1 | 2 | 1 | 6 |
| 2 | 3 | 2 | 7 |
| 3 | 4 | 3 | 8 |
在上一个程序框图中,初始化接线端使用了数据类型的默认值0作为第一次循环的初始值,且在此后循环中不对反馈节点进行初始化。
虽然在循环和嵌套循环中可将节点和初始化接线端隔开,但不可将初始化接线端移到含有节点的嵌套结构的外部。创建子VI时也不能将节点与初始化接线端隔开。如从只含有节点或只含有初始化接线端的一部分程序框图创建一个子VI,LabVIEW将返回一个错误。