2013-04-18 56 views
0

我正在嘗試用吉時利和PyVISA做IV曲線測量。我在Keithley website上找到了一個Matlab example,但有一個部分我無法理解。PyVISA IV與吉時利掃描

% Used the serail poll function to wait for SRQ 
val = [1];   % 1st instrument in the gpib object, not the gpib add 
spoll(obj1,val); % keep control until SRQ 
fprintf(obj1,':TRAC:DATA?') 

這個串行輪詢函數到底做了什麼?我在PyVISA中沒有這個功能,是嗎?

回答

1

串行輪詢通常在更高級別的驅動程序中實現。它只是反覆查詢SCPI * STB?或等效的總線命令。

PyVISA的read_stb(vi)稱爲VISA的viReadSTB(vi)。有了它,你可以做你自己的投票。

編輯:

read_stb是PyVISA的低層次的模塊。要使用低級別呼叫,您需要傳遞從儀器對象獲取的vi字段。

有一個很好的例子here,但一定要爲儀器及其狀態模型使用適當的SCPI命令。

狀態輪詢取決於在測量開始之前設置的狀態和事件寄存器。您可以設置儀器以指示樣品可用或測量完成。

如果總線是GPIB(IEEE 488.2),那麼PyVISA的wait_for_srq函數將工作,因爲在GPIB上,SRQ是總線信號之一。該示例中還顯示了該代碼。

+1

pyvisa樂器具有'stb'屬性。總的來說,我寧願使用低級函數。 – P3trus

+0

@ P3trus謝謝你指出。 –