【发布时间】:2016-01-04 14:17:17
【问题描述】:
我正在尝试编写一个静默函数发生器并利用它的突发模式。我想用函数发生器后面的触发器触发突发启动,然后使用while循环增加突发延迟,使触发后突发峰值沿着突发波缓慢移动。外部触发来自 5MHz 源和周期性。 在代码中,我首先初始化函数发生器,并为突发波形输入必要的参数,然后我有一个按钮来控制是否启用通道输出。如果单击此按钮,我只想使用“启用输出”VI。因此“启用输出”VI 将仅在单击按钮时禁用/启用输出。我使用事件结构来检测按钮点击。
现在的问题是,当按下按钮(启用输出)时,我需要使用 while 循环或以某种方式不断增加突发延迟并将其发送到函数发生器。我需要触发峰值在触发之后,然后慢慢地向下一个触发结束,当到达结束时它应该在第一次触发后返回并重复,直到我停止这部分。
执行此操作的标准方法是什么?我也尝试过案例结构,但我似乎无法让内部增加的延迟循环停止。
谢谢
【问题讨论】:
-
这个问题对我来说不是很清楚,但总的来说,框图的风格很糟糕。可以以更好的方式设计事件处理。你能把问题简化一下吗?
-
你能添加一个图(1)你正在生成的信号吗? (2) 具有突发延迟的信号版本; (3) 5 MHz 触发器如何与信号对齐?我想可视化不间断的输出波形。例如,现在我最好的猜测是:一个信号在每次重复之间以 0 V 段重复;每次重复都从外部触发开始;每次重复从开始到外部触发都有越来越多的延迟。
-
您是否只需要一个用于改变突发延迟的 While 循环上的移位寄存器和一个选择执行两种状态中的哪一种的第二个移位寄存器?如果我正确阅读了您的描述,那将解决两个循环问题。
标签: loops while-loop labview