當在使用Easy DIO VI時, LabVIEW產生Error –10440錯誤訊息



硬體: SCC>>Carriers>>SC-2345

問題: 我有一個SC-2345上面安裝8個數位I/O(DIO)模組, 在這個情況下, 有個SCC-DI01模組及4個SCC-DO01模組. 每一個SCC模組代表一條數位輸入線(SCC-DI01)或數位輸入線(SCC-DO01), 所以我的8個模組代表一個數位埠的8條線. 我試著去使用Read from Digital Line.vi和Write to Digital Line.vi, 二者預設為分別從一個8條線的數位埠讀取或寫入資料; 然而這些VI總是會造成NI-DAQ –10440的錯誤訊息. 我有哪裏做錯了嗎?

解答: Read from Digital Line.viI和the Write to Digital Line.vi是LabVIEW中的二個Easy DIO Vis. 他們設定你的數位埠每條線的方向(在這個情況中為SC-2345中的8個模組). 例如Read from Digital Line.vi設定數位輸入埠的每條線的狀態; 同樣的Write to Digital Line.vi設定數位輸出埠的每條線的狀態. 如果你有一張有DIO線的資料擷取卡, 且每一條線可以個別去定義是數位輸入或輸出, 那麼狀態應該是正常的; 但是如果你的模組只能單向做數位輸入或輸出, 但是無法雙向的話, 問題將會出現.

換句話說, 如果你使用Read from Digital Line.vi, SCC-DI01模組針對數位輸入的設定將會是正確的, 但是SCC-DO01卻無法進行數位輸入, 所以產生-10440錯誤碼; 同樣的, 如果你使用Write to Digital Line.vi, SCC-DO01模組針對數位輸出的設定將會是正確的, 但是SCC-DI01卻無法進行數位輸出, 所以也會產生-10440錯誤碼.

這個問題的解法會建議你使用Advanced DIO VI, 而非使用Easy DIO VI, 因為Advanced DIO VI會讓你逐線去個別設定你SCC模組. 使用DIO Port Config.vi 中的line direction map腳位去指定SC-2345中SCC-DI01和SCC-DO01模組的順序. 也可使用DIO Port Read.vi 或DIO Port Write.vi中的line mask腳位去讀取或寫入你的數位埠中的個別條線.

相關連結:

附加檔案:





報告日期: 05/03/2001
最後更新: 10/02/2003
文件偏號: 292C3LJ3