【问题标题】:Labview implementing digital clockLabview 实现数字时钟
【发布时间】:2018-06-10 05:57:46
【问题描述】:

我想在labview 中实现以下电路。

在 LabView 中,我可以发现 while 循环是由 Tick 计时器(以毫秒为单位)或固定时钟控制来控制的。但是我想将顺序 ckt 块放在 while 循环中,并且控制信号应该由其他一些组合电路生成。有可能这样做吗?

【问题讨论】:

    标签: clock labview sequential digital


    【解决方案1】:

    首先...你有LabVIEW Real-Time ModuleLabVIEW FPGA Module 吗?这些是 LV 附加组件。如果没有,那么你没有能力做到这一点,不是真的。 LabVIEW 桌面版是一种用于桌面机器的编程语言。常规 LabVIEW 中的 While 循环就像 C++ 或 C# 中的 While 循环——它只是一个执行操作的循环,并且您在内部调用的任何计时子例程都受操作系统的反复无常,因为它交换线程进出或内存管理器的延迟。甚至 Timed While 循环也只是一个模拟。它试图靠近系统时钟,但它非常不精确。

    您需要其中一个模块才能将代码部署到操作系统(实时)或直接部署到硬件 (FPGA),您可以在其中拥有确定性代码。这在任何桌面系统(Mac、Windows、桌面 Linux)上都是不可能的。

    现在...如果您确实有这些模块之一,是的,这是可能的。

    在 FPGA 上,您可以直接对其进行编程。 FPGA 模块允许编写 LV 代码以在每个时钟节拍上执行执行周期。与门实际上是与原始节点。还有一个信号时钟节点。等等。

    在 RT 上,它更复杂但可行。 While 循环只是一个循环,就像您在任何其他编程语言中发现的一样。它将执行其中的所有节点,然后重新开始。因此,如果循环结构中的节点具有与之关联的时间签名,那么这些节点将在其预定时间执行,而 While 循环将等待这些节点完成,然后再开始下一次迭代。因此,编写您的数字时钟以在给定时刻返回一个信号,这将触发您的时序逻辑运行。

    【讨论】:

    • 您好,我有 NI DAQ 模块附带的 Labview 软件。我不确定它是否属于 RT 模块。我想实现循环伪随机二进制序列。 Labview 只有线性 MLS 组件,但我想控制组件旋转序列。有可能吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 2019-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多