background image

SC5312A Operating & Programming Manual 

Rev 1.0.2 

12 

 

S C 5 3 1 2 A

 

P

R O G R A M M I N G  

I

N T E R F A C E

 

Device Drivers 

The  SC5312A  is  programmed  by  writing  to  its  set  of  configuration  registers,  and  its  data  is  read  back 
through its set of query registers. The user may program directly at register level or through the API library 
functions provided. These API library functions are wrapper functions of the registers that simplify the 
task of configuring the register bytes. The register specifics are covered in the next section. Writing to and 
reading from the device at the register level through the API involves calls to the 

sc5312a_RegWrite

 and 

sc5312a_RegRead

 functions respectively. 

For Microsoft Windows

TM

 operating systems, The SC5312A API is provided as a dynamic linked library, 

sc5312a.dll

, which is available for 32-bit and 64-bit operating systems. This API is based on the 

libusb-1.0 

library and therefore it is required to be installed on the system prior to development. The 

libusb-1.0.dll

 

will install along with the 

SC5312A.dll

 as well as the header files needed for development. Files required 

for development are in the 

\win\Driver

 directory. SignalCore makes every effort to bundle the latest third-

party tools in our software installer. Occasionally however, third-party updates may not be identified and 
bundled in time for a given product shipment. Therefore, for the latest version of libusb-1.0, please visit 

http://libusbx.org

.  To  install  the  necessary  drivers,  right  click  on  the 

sc5312a.inf

  file  under  the 

\win

 

directory and select “Install.” After installation is completed, when the device is pl

ugged into a USB port 

and powered on, the host computer should identify the device and load the appropriate driver. For more 
information, please see the 

SC5312A_Readme.txt

 file also located under the 

\Win

 directory. 

A LabVIEW API is provided and it consists of function wrappers that call the sc5312a.dll. A LabVIEW API 
written in G that uses NI-VISA is also available from the SignalCore website. The  National  Instruments 
driver wizard that is part of NI-VISA can be used to create a driver for most operating systems. For the 
SC5312A, the Vendor ID is 

0x277C

 and the PID is 

0x0018

For Linux systems, the shared library 

libsc5312a.so

 is provided. To install the shared files and links, type 

make install

” in the 

/Linux/

 directory. The user may need to acquire root privileges to perform the install 

operation. Ensure the 

libsub-1.0.X.dev

 package for the Linux distribution is installed on the host computer. 

For other operating systems, users will need to write and compile their own drivers. The device register 
map provides the necessary information to successfully implement a driver for the SC5312A. Driver code 
based on libusb-1.0 is available to our customers by request. Should the user require assistance in writing 
an appropriate API other than that provided, please contact SignalCore for additional example code and 
hardware details. 

Using the Application Programming Interface (API) 

The SC5312A API library functions make it easy for the user to communicate with the device. Using the 
API removes the need to understand register-level details - their configuration, address, data format, etc. 
Commands to control the device are greatly simplified when using the API. For example, to obtain the 
device  temperature,  the  user  simply  calls  the  function 

sc5312a_GetDeviceTemperature

,  or  calls 

sc5312a_SetFrequency

 

to tune the frequency. The software API is covered in detail in the 

Software API 

Library Functions

 section.

 

Содержание SC5312A

Страница 1: ...SC5312A 400 MHz to 6 GHz IQ Demodulator PXI Express Interface Operating and Programming Manual 2013 2020 SignalCore Inc support signalcore com...

Страница 2: ...guring the SC5312A 4 RF Signal Connections 6 Baseband Connections 7 Indicator LED 7 SC5312A Theory of Operation 8 Overview 8 RF Input Section 8 LO Input Section 10 IF Output Section 11 SC5312A Program...

Страница 3: ...put Linearity of the IQ Demodulator 15 Storing the Startup State 15 Writing to the User EEPROM 16 Querying the SC5312A Writing to Request Registers 17 Reading the Device Temperature 17 Reading the Dev...

Страница 4: ...RT OF SIGNALCORE INCORPORATED SHALL BE LIMITED TO THE AMOUNT THERETOFORE PAID BY THE CUSTOMER SIGNALCORE INCORPORATED WILL NOT BE LIABLE FOR DAMAGES RESULTING FROM LOSS OF DATA PROFITS USE OF PRODUCTS...

Страница 5: ...materials and the categorical amount present in our products are shown below Model Name Lead Pb Mercury Hg Cadmium Cd Hexavalent Chromium Cr VI Polybrominated biphenyls PBB Polybrominated diphenyl eth...

Страница 6: ...SOFTWARE UNANTICIPATED USES OR MISUSES OR ERRORS ON THE PART OF THE USER OR APPLICATIONS DESIGNER ADVERSE FACTORS SUCH AS THESE ARE HEREAFTER COLLECTIVELY TERMED SYSTEM FAILURES ANY APPLICATION WHERE...

Страница 7: ...e specifications The SC5312A is designed to be sufficiently cooled in either all PXIe chassis or PXIe hybrid chassis PXI Express chassis with traditional PXI slots However certain environmental factor...

Страница 8: ...v 1 0 2 5 The SC5312A is a PXIe based IQ demodulator with all I O connections and indicators located on the front face of the module as shown below Each location is discussed in further detail below F...

Страница 9: ...trapped inside the connector may take several days to fully evaporate and may degrade measurement performance until fully evaporated Tighten all SMA connections to 5 in lb max 56 N cm max RF Signal C...

Страница 10: ...ration it is recommended to terminate the other half of the differential pair using a 50 terminator All baseband connectors are MCX female Indicator LED The SC5312A provides visual indication of impor...

Страница 11: ...d high signal amplitude or too soft low signal amplitude When the device is driven hard nonlinear effects dominate the system When driven too softly signal to noise dynamic range suffers A general rul...

Страница 12: ...ocm Variable Diff Amp Vocm Vocm Out Diff Amp IQ Demodulator Linearity Dac 90 0 i i 50W 50W RF Amp 1 RF Amp 3 RF Amp 2 9 Selectable RF Filters 9 Selectable LO Filters LO Amp 2 LO Amp 1 Gain Selectable...

Страница 13: ...situ equalization to remove IQ errors such as phase imbalance and quadrature gain offsets that are inherent to the device Providing this auxiliary path makes the task of characterizing the system with...

Страница 14: ...of the device This is not a hard requirement and the user will need to adjust the voltage levels to suit their specific requirements As an example setting to some other voltage may be required to opt...

Страница 15: ...t computer should identify the device and load the appropriate driver For more information please see the SC5312A_Readme txt file also located under the Win directory A LabVIEW API is provided and it...

Страница 16: ...Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 INITIALIZE 0x01 7 0 Mode SET_SYSTEM_ACTIVE 0x02 7 0 Enable SYS LED RF_FREQUENCY 0x10 7 0 MHz Frequency Word 7 0 15 8 MHz Frequency Word 15 8 23 16 MHz Frequen...

Страница 17: ...ta is sent as a 40 bit word with the LSB in Hz Setting RF Input RF Amplifiers RF_AMPLIFIER 0x12 This register enables or disables the RF amplifiers Setting bit 0 low 0 disables the RF amplifier Settin...

Страница 18: ...Offset in Differential Amplifiers DC_OFFSET_DAC 0x1A The DC offset between the and terminals of the differential amplifier output can be minimized by writing this DAC Varying the DAC value from 0 to 1...

Страница 19: ...EEPROM for the user to store data User data is sent one byte at a time and is contained in the last least significant byte of the three bytes of data written to the register The other two bytes contai...

Страница 20: ...st 14 bits 13 0 Bit 13 is the polarity bit indicating whether it is positive 0x0 or negative 0x1 For an ENDPOINT_IN transfer data is returned in 2 bytes with the MSB first The temperature value repres...

Страница 21: ...0x8000 will return data stored in address location 0x0000 The calibration EEPROM map is shown in Table 5 All calibration data whether floats unsigned 8 bit unsigned 16 bit or unsigned 32 bit integers...

Страница 22: ...M map EEPROM ADDRESS HEX NUMBER OF DATA POINTS TYPE DESCRIPTION 0 1 U32 Manufacturing Information 4 1 U32 Product serial number 8 1 U32 RF module number C 1 U32 Product manufacture date 24 1 F32 Firmw...

Страница 23: ...ce sc5312a_SetFrequency sc5312a_SetRfGain sc5312a_SetRfAmplifier sc5312a_SetRfPath sc5312a_SetLoOut sc5312a_SetRfAttenuation sc5312a_SetRfFilter sc5312a_SetLoFilter sc5312a_SetIfGainDac sc5312a_SetVco...

Страница 24: ...set the device active LED define RF_FREQUENCY 0x10 set the frequency define RF_AMPLIFIER 0x12 enable amplifiers define RF_ATTENUATION 0x13 set attenuation for digital step attenuators define RF_PATH...

Страница 25: ...rl H to assist with understanding the input and output parameters Function sc5312a_ListResources Definition int sc5312a_ListResources char visaResource unsigned int size Output char visaResource point...

Страница 26: ...r specified by the commandByte See the register map on Table 2 for more information Example To set the frequency to 2 GHz Declaring char visaResource char malloc sizeof char 10 10 devices unsigned int...

Страница 27: ...l mode set the mode of initialization Description sc5312a_InitDevice initializes resets the device Mode 0 resets the device to the default power up state Mode 1 resets the device but leaves it in its...

Страница 28: ...char attenuator unsigned char atten Input unsigned int deviceHandle handle to the opened device unsigned char attenuator selects the attenuator to program unsigned char atten attenuation value 0 31 d...

Страница 29: ...the differential amplifiers The default factory setting is 2008 Function sc5312a_SetDcOffsetDac Definition int sc5312a_SetDcOffsetDac unsigned int deviceHandle unsigned char channel unsigned short dac...

Страница 30: ...sc5312a_GetDeviceInfo unsigned int deviceHandle deviceInfo_t devInfo Input unsigned int deviceHandle handle to the opened device Output deviceInfo_t devInfo device info struct Description sc5312a_Get...

Страница 31: ...gned char byteData Input unsigned int deviceHandle handle to the opened device unsigned int memAdd EEPROM memory address Output unsigned char byteData the read back byte data Description sc5312a_ReadU...

Страница 32: ...receive a factory calibration The SC5312A is sold as a component and users will need to perform amplitude and IQ correction as part of their system which may minimally include a digitizer LO source an...

Отзывы: