R&S FSL
Los
módulos
<VXIpnpPath>\WinNT\include (typically C:\VXIpnp\WinNt\include).
Como una alternativa se puede añadir al proyecto una referencia a la VISA32.DLL.
• Crear un buffer de respuesta
Debido a que la DLL devuelve cadenas terminadas en cero, se debe crear una cadena de
longitud suficiente antes de llamar a las funciones InstrRead() y ilrd(), debido a que
Visual Basic inserta una longitud específica y no actualizada por la DLL. En el siguiente
ejemplo se crea una longitud específica para una cadena:
– Dim Rd as String * 100
– Dim Rd as String
– Rd = Space$(100)
• Crear Procesos "Wrapper" de lectura y escritura
Debido a que las funciones VISA requieren series de comandos y respuestas y su longitud
correspondiente en dos parámetros separados, el código de programa principal es más fácil
de leer y mantener si las funciones de lectura y escritura están encapsuladas. Aquí el
proceso InstrWrite() encapsula la función viWrite() y InstrRead() encapsula
viRead().
Public Sub InstrWrite(ByVal vi As Long, ByVal Cmd As String)
Dim status As Long
Dim retCount As Long
'Enviar comando al instrumento y chequear el estado
status = viWrite(vi, Cmd, Len(Cmd), retCount)
'Chequear errores – dará lugar a un error si el estado no es VI_SUCCESS
CALL CheckError(vi, status)
End Sub
1300.2519.67
visa32.bas
y
Introducción Breve al Control Remoto
vpptype.bas
se
6.3
pueden
encontrar
en
ES-3