Giriş
IVI sürücülerincen önce 1990'larda Standard Commands for Programmable Instrumentation (SCPI) vardı. SCPI ASCII tabanlı metin komutlardı.
1993 yılında VXIplug&playSystemsAlliance ortaya çıktı ve API tabanlı sürücü arayüzleri sağlamaya başladı. Bu kullanım ASCII tabanlı metin komutlardan daha kolay olmasına rağmen standart haline gelemedi.
Bu sorundan kurtulmak için 1998 yılında Interchangeable ckuruldu.
IVI Class Compliant Drivers
Açıklaması şöyle.
IVI Custom Drivers
Açıklaması şöyle.
- IVI-C veya
- IVI-COM
Shared Components
Tüm sürücülerin kullandığı ortak işlevi içerir. IVIShared Components IVI sürücüsünden önce kurulmalıdır. İndirme sayfasına gitmek için tıklayınız.
- 32 bit sistemler için IviSharedComponents_260.exe,
- 64 bit sistemler için IviSharedComponents64_260.exe
kurulur
VISA Shared Components
VISA sürücüleri, IVI sürücülerinin alt katmanıdır ve üretici (vendor)'ın sağladığı kurulum ile gelir.
Visual C++
COM Driver için
Include Path
Include path'e iki satır eklenir
1. include path'e şu satırı dahil ederiz.
-32 bit sistemler için “C:\Program Files\IVI Foundation\IVI\Bin”
-64 bit sistemler için “C:\Program Files (x86)\IVI Foundation\IVI\Bin”
2. VISA DLL'i göstermek için include path'e şu satırı dahil ederiz.
-“$(VXIPNPPATH)VisaCom”
Gerekli Kütüphane
Üreticinin verdiği kütüphane ile linklenir. Örneğin Ag34401.lib
DLL'leri dahil etmek için şu satırı dahil ederiz. no_namespace kullanarak sürücünün API'sine global namespace içinden de erişebiliriz.
IVI sürücülerincen önce 1990'larda Standard Commands for Programmable Instrumentation (SCPI) vardı. SCPI ASCII tabanlı metin komutlardı.
1993 yılında VXIplug&playSystemsAlliance ortaya çıktı ve API tabanlı sürücü arayüzleri sağlamaya başladı. Bu kullanım ASCII tabanlı metin komutlardan daha kolay olmasına rağmen standart haline gelemedi.
Bu sorundan kurtulmak için 1998 yılında Interchangeable ckuruldu.
IVI Class Compliant Drivers
Açıklaması şöyle.
IVI Class Compliant drivers usually also include numerous functions that are beyond the scope of the class definition. This may be because the capability is not common to all instruments of the class or because the instrument offers some control that is more refined than what the class definesListe şöyle
Class | IVI Driver |
Digital multimeter (DMM) | IviDmm |
Oscilloscope | IviScope |
Arbitrary waveform/function generator | IviFgen |
DCpowersupply | IviDCPwr |
AC power supply | IviACPwr |
Switch | IviSwtch |
Power meter | IviPwrMeter |
Spectrum analyzer | IviSpecAn |
RFsignalgenerator | IviRFSigGen |
Upconverter | IviUpconverter |
Downconverter | IviDownconverter |
Digitizer | IviDigitizer |
Counter/timer | IviCounter |
IVI Custom Drivers
Açıklaması şöyle.
IVI also defines custom drivers. Custom drivers are used forinstruments that areIVI sürücüleri 2 türlü API destekler
not members of a class. For example, there is not a class definition for network
analyzers, so a networkanalyzer driver must be a custom driver. Custom drivers
provide the same consistency and benefits described below for an IVI driver,
except interchangeability.
- IVI-C veya
- IVI-COM
Shared Components
Tüm sürücülerin kullandığı ortak işlevi içerir. IVIShared Components IVI sürücüsünden önce kurulmalıdır. İndirme sayfasına gitmek için tıklayınız.
- 32 bit sistemler için IviSharedComponents_260.exe,
- 64 bit sistemler için IviSharedComponents64_260.exe
kurulur
VISA Shared Components
VISA sürücüleri, IVI sürücülerinin alt katmanıdır ve üretici (vendor)'ın sağladığı kurulum ile gelir.
Visual C++
COM Driver için
Include Path
Include path'e iki satır eklenir
1. include path'e şu satırı dahil ederiz.
-32 bit sistemler için “C:\Program Files\IVI Foundation\IVI\Bin”
-64 bit sistemler için “C:\Program Files (x86)\IVI Foundation\IVI\Bin”
2. VISA DLL'i göstermek için include path'e şu satırı dahil ederiz.
-“$(VXIPNPPATH)VisaCom”
Gerekli Kütüphane
Üreticinin verdiği kütüphane ile linklenir. Örneğin Ag34401.lib
DLL'leri dahil etmek için şu satırı dahil ederiz. no_namespace kullanarak sürücünün API'sine global namespace içinden de erişebiliriz.
#import <IviDriverTypeLib.dll> no_namespace
#import <IviDmmTypeLib.dll> no_namespace
#import <GlobMgr.dll> no_namespace
#import <Ag34401.dll> no_namespace
Hiç yorum yok:
Yorum Gönder