在 CompactRIO 的 FPGA 中搭配 DAQmx 使用 PFI0

更新 Aug 11, 2025

環境

硬件

  • CompactRIO Controller

軟體

  • LabVIEW FPGA Module
  • LabVIEW Real-Time Module
  • LabVIEW

驅動程式

  • NI-DAQmx

  • 我要如何在 cRIO 控制器(cRIO‑904x 與 cRIO‑905x)上以 DAQmx 介接 PFI0?

  • 我要如何將 FPGA 擷取與 DAQmx 擷取做同步?

  • 我要如何把 myRIO‑904x 或 cRIO‑905x 的 PFI0 訊號送到 FPGA?

在你的 Real‑Time VI 中,可以使用 DAQmx Connect Terminals VI 將 PFI0 線路連到某一條 cRIO trigger FPGA resource。接著在 FPGA 程式中,你可以把這個 cRIO trigger resource 當成數位輸入來讀取,用以觸發 FPGA 程式中的事件。

  1. 在 Real‑Time VI 的程式框圖放置 DAQmx Connect Terminals VI。將 PFI0 設為 Source Terminal,並從 cRIO 最後四條 trigger 線(4、5、6 或 7)中選一條(例如 cRIO_Trig5)作為 Destination Terminal

附註

  • 當在建立 DAQmx Terminal 常數時,透過右鍵點選端點並選擇 Create >> Constant,如果專案未連線到 cRIO,或 cRIO 上未安裝相容的軟體,常數欄位將不會自動顯示名稱。

  • 若要連線到 cRIO,請在專案中右鍵點選 cRIO 項目並選擇 Connect

  • 請[更新你的 cRIO 軟體](Update your cRIO software),以獲得與裝置手冊和規格指南所列相符的版本。

  • 若暫時無法連線至 cRIO,也可以用字串輸入 source terminaldestination terminal

2. 在專案的 FPGA 目標下找到 cRIO_Trig 資料夾,其中包含所有 cRIO trigger FPGA 資源。

  1. 將你已連接到 PFI0 的 cRIO 觸發資源拖曳到 FPGA VI 的框圖中。

4. 現在你可以在 FPGA VI 中讀取來自 cRIO 觸發資源的訊號。

附加資訊

  • 為了獲得最精準的同步,NI 建議充分利用 FPGA 資源,並在該層級完成完整的資料擷取。

  • 共享觸發匯流排線具有固定方向。前 4 條觸發線由 FPGA 傳送至 DAQmx,最後 4 條由 DAQmx 傳送至 FPGA。詳細說明可參見 cRIO-904x/905x Considerations

    • 如果你在 DAQmx Connect Terminals VI 中使用前 4 條觸發線之一作為 Source Terminal,就可以將 cRIO 觸發線輸出到 PFI0。

  • 觸發資料擷取的逐步操作說明可在此處找到。