欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

函數(shù)說明

_viSetAttribute

設(shè)置 VISA 屬性,比如代替 _viSetTimeout 函數(shù)設(shè)置超時時間,當然它也可以用來設(shè)置其它特定的 VISA 屬性。請閱讀 VISA 文檔以了解更多信息以及 VISA 屬性和對應值的列表。

#include <Visa.au3>
_viSetAttribute($h_session, $i_attribute, $i_value)

 

參數(shù)

$h_session VISA 描述符(字符串)或者 VISA session 句柄(整數(shù))。
(請查看 _viExecCommand 函數(shù)的注意部分以了解更多信息)
$i_attribute 要更改的屬性。
屬性值在 VISA 庫中定義。
AutoIt 的庫中僅定義了一個超時時間屬性($VI_ATTR_TMO_VALUE)常量、串口屬性和相關(guān)數(shù)值(請看下面注意部分),當然您也可以傳遞其它您想要的值(合法的整數(shù)數(shù)值)。
$i_value 屬性的值。必須是整數(shù)而且與屬性值對應,這些都在 VISA 文檔中有定義。

 

返回值

成功: - 返回值為0
失敗: - 返回值為 -1,說明無法打開 VISA DLL,否則為一個非零的數(shù)值,用以表示 VISA 錯誤碼(請查看 VISA 編程人員指引)。
一旦出現(xiàn)錯誤則本函數(shù)將總是把 @error 設(shè)為 1

 

注意

下面列出的是預定義的屬性和數(shù)值。除此之外,還可以使用其它合法的屬性/數(shù)值,只要傳遞相應整數(shù)索引到此函數(shù)即可(請查看 VISA 程序員指引)。

* 屬性 $VI_ATTR_TMO_VALUE -> Set Timeout
* 數(shù)值:
          以毫秒為單位的超時時間,或者
          $VI_TMO_IMMEDIATE (或0)表示“立即返回”
          VI_TMO_INFINITE (或 "INF")表示“無超時”

* 屬性 $VI_ATTR_ASRL_BAUD
* 數(shù)值:
          任何合法的波特率(比如 9600、115200,等等)

* 屬性 $VI_ATTR_ASRL_DATA_BITS
* 數(shù)值:
         從 5 到 8

* 屬性 $VI_ATTR_ASRL_PARITY
* 數(shù)值:
          $VI_ASRL_PAR_NONE
          $VI_ASRL_PAR_ODD
          $VI_ASRL_PAR_EVEN
          $VI_ASRL_PAR_MARK
          $VI_ASRL_PAR_SPACE

* 屬性 $VI_ATTR_ASRL_STOP_BITS
* 數(shù)值:
          $VI_ASRL_STOP_ONE
          $VI_ASRL_STOP_ONE5
          $VI_ASRL_STOP_TWO

* 屬性 $VI_ATTR_ASRL_FLOW_CNTRL
* 數(shù)值:
          $VI_ASRL_FLOW_NONE
          $VI_ASRL_FLOW_XON_XOFF
          $VI_ASRL_FLOW_RTS_CTS
          $VI_ASRL_FLOW_DTR_DSR

所有的 VISA 函數(shù)都要求必須安裝 VISA 庫(您可以通過檢查 WINDOWS\system32 目錄下是否存在 visa32.dll 來判斷)和一個 GPIB 卡(例如 National Instruments(美國國家儀器有限公司)的 NI PCI-GPIB 卡或者是 Agilent 82350B PCI 高性能 GPIB 卡)。

* 更詳細的通用 VISA 描述符(DESCRIPTOR)請查看 _viExecCommand 函數(shù)的幫助部分。

 

相關(guān)

_viSetTimeout, _viExecCommand, _viOpen, _viClose

 

示例


;- 這個腳本假定您已經(jīng)把 GPIB 的地址設(shè)為 3
; 如果您的設(shè)備使用的是不同的地址,請把 "GPIB::3::0" 改為
; 相應的描述符。_viOpen 函數(shù)也是同樣處理
; 本腳本演示了如何使用 _viSetAttribute 函數(shù)。在這個示例中
; 我們使用 _viSetAttribute 來代替 _viSetTimeout 函數(shù),用以設(shè)置
; _viExecCommand 操作的 GPIB 超時時間

#include <Visa.au3>

Dim $h_session = 0

; 請求設(shè)備的 GPIB 地址3 的 ID
MsgBox(0,"Step 1","Simple GPIB query with explicit TIMEOUT set")
Dim $s_answer = _viExecCommand("GPIB::3::0","*IDN?",10000) ; 10 秒超時
MsgBox(0,"GPIB QUERY result",$s_answer) ; 顯示結(jié)果

; 下面的語句和使用 _viSetAttribute 函數(shù)的作用相同:
MsgBox(0,"Step 2","_vOpen + timeout using _viSetAttribute + GPIB query")
Dim $h_instr = _viOpen(3)
; 注意,等同于語句: _viSetTimeout($h_instr, 10000)
_viSetAttribute($h_instr, $VI_ATTR_TMO_VALUE, 10000) ; 10000 毫秒 = 10 秒

$s_answer = _viExecCommand($h_instr,"*IDN?") ; 現(xiàn)在不需要設(shè)置超時時間
MsgBox(0,"GPIB QUERY result",$s_answer) ; 顯示結(jié)果

MsgBox(0,"Step 3","Close the Instrument connection using _viClose")
_viClose($h_instr) ; 關(guān)閉設(shè)備連接