THIS SOFTWARE IS PROVIDED BY XVERVE TECHNOLOGIES INC. “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL XVERVE TECHNOLOGIES INC. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
SOFTWARE, IDE, LIBRARIES, DRIVERS AND SAMPLE APPLICATIONS PROVIDED BY XVERVE TECHNOLOGIES INC. MAY BE USED ONLY IN CONJUNCTION WITH SIGNALYZER MODULES.
ALL XVERVE TECHNOLOGIES INC. SOFTWARE COMPONENTS MAY BE DISTRIBUTED IN ANY FORM AS
LONG AS ORIGINAL LICENSE INFORMATION IS NOT MODIFIED AND ACCOMPANIED WITH PRODUCT RELEASE
|
Revision |
Date |
Notes |
Author |
|
0.01 |
2011-08-01 |
Initial Release |
OS |
|
|
|
|
|
|
|
|
|
|
[]
The SIGNALYZER-LIB is an easy-to-use Application Program Interface (API), designed to give you complete access to Signalyzer products functionality and support for SPI, I2C, JTAG, SWD and FIFO protocols, allowing easy integration with a wide range of other systems such as development/evaluation boards, test and manufacturing systems and more.
The SIGNALYZER-LIB programming language bindings make integration of the API into custom applications simple. Accessing the functionality of Signalyzer series devices simply requires function calls to the API. This API is easy to understand, much like the standard ANSI C library functions. There is no unnecessary entanglement with the Windows messaging subsystem as in development kits for other embedded tools.
There are no charges or licensing fees to start developing with the SIGNALYZER-LIB API. Furthermore, the SIGNALYZER-LIB is royalty free and it can be used and distributed in third party applications absolutely free.
Never underestimate the value of good software. Xverve Technologies Inc. makes tools for engineers by engineers. We strive to make your job of integrating the Development API as easy as possible. With one quick look, you will notice that the API is clean, easy to understand, and can be used with variety of compilers and development tools.
The SIGNALYZER-LIB API documentation is divided into following primary categories:
The API divided into two main categories of the calls
Every API call, whether it was successful or failed for various reasons, the SIGNALYZER_STATUS code is returned to help to determine the results of the call and failure.
|
Function |
Description |
|
signalyzer_get_library_version |
Returns SIGNALYZER-LIB version information |
|
signalyzer_get_number_of_devices |
Returns number of devices attached |
|
signalyzer_get_device_list |
Retrieves detailed list of attached devices |
|
signalyzer_open |
Opens a connection with specified Signalyzer device |
|
signalyzer_close |
Closes a connection with previously opened Signalyzer device |
|
signalyzer_get_attribute_id |
Retrieves Attribute ID based on its textual description |
|
signalyzer_get_attribute_description |
Retrieves textual description for specified Attribute |
|
signalyzer_get_status_description |
Returns textual description of SIGNALYZER_STATUS |
|
signalyzer_write_u8 |
Writes an unsigned char (byte) into specified Attribute Id |
|
signalyzer_write_u16 |
Writes an unsigned short (16-bits) into specified Attribute Id |
|
signalyzer_write_u32 |
Writes an unsigned int (32-bits) into specified Attribute Id |
|
signalyzer_write_u64 |
Writes an unsigned long long (64-bits) into specified Attribute Id |
|
signalyzer_write |
Writes set number of bits into specified Attribute Id |
|
signalyzer_read_u8 |
Reads an unsigned char (byte) from specified Attribute Id |
|
signalyzer_read_u16 |
Reads an unsigned short (16-bits) from specified Attribute Id |
|
signalyzer_read_u32 |
Reads an unsigned int (32-bits) from specified Attribute Id |
|
signalyzer_read_u64 |
Reads an unsigned long long (64-bits) from specified Attribute Id |
|
signalyzer_read |
Reads set number of bits from specified Attribute Id |
|
signalyzer_write_read_u8 |
Writes and Reads an unsigned char (byte) from specified Attribute Id |
|
signalyzer_write_read_u16 |
Writes and Reads an unsigned short (16-bits) from specified Attribute Id |
|
signalyzer_write_read_u32 |
Writes and Reads an unsigned int (32-bits) from specified Attribute Id |
|
signalyzer_write_read_u64 |
Writes and Reads an unsigned long long (64-bits) from Attribute Id |
|
signalyzer_write_read |
Writes and Reads set number of bits from specified Attribute Id |
Please refer to SIGNALYZER_LIB User Guide for detailed description of each function call.
Parameters, operating mode and all other aspects of device operation are controlled using attributes. From the prospective of Embedded Development Attribute can also be viewed as set of registers. Writing a value to Attribute or a Register will result in certain action. Reading a value from Attribute will also produce a certain action. Type of action will depend on Attribute being accessed. For example, a write to SIGNALYZER_ATTRIBUTE_CORE_OPERATING_MODE will cause the device to reconfigure to a particular mode, writing to DATA attribute will in data being output onto pins in specified mode.
This section will provide detailed overview of CORE attributes which are mode-independent. For a particular mode of operation please refer to a document describing its attributes.
Read SIGNALYZER-LIB version information
ID: 0x00000001
Size: 32-bits (uint32_t)
Access: READ ONLY
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_API_VERSION [ C ]
SIGNALYZER_ATTRIBUTE.CORE_API_VERSION [ .NET | C++ ]
CORE_API_VERSION [ ASCII | Tcl ]
Raw Data Reads and Writes
ID: 0x00000002
Size: Variable
Access: READ and WRITE
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_DATA [ C ]
SIGNALYZER_ATTRIBUTE.CORE_DATA [ .NET | C++ ]
CORE_DATA [ ASCII | Tcl ]
Returns currently selected Hardware Abstraction Layer (HAL) interface.
ID: 0x00000003
Size: 32-bits
Access: READ ONLY
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_HAL_INTERFACE [ C ]
SIGNALYZER_ATTRIBUTE.CORE_HAL_INTERFACE [ .NET | C++ ]
CORE_HAL_INTERFACE [ ASCII | Tcl ]
Sets operating mode of the device channel. The list of supported operating modes depends on the used product. Refer to device documentation for list of supported operating modes.
ID: 0x00000004
Size: 32-bits
Access: READ and WRITE
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_OPERATING_MODE [ C ]
SIGNALYZER_ATTRIBUTE.CORE_OPERATING_MODE [ .NET | C++ ]
CORE_OPERATING_MODE [ ASCII | Tcl ]
Note: This Attribute Currently is not being used and defaults to byte size
ID: 0x00000005
Size: 32-bits
Access: READ and WRITE
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_DATA_WORD_SIZE_BITS [ C ]
SIGNALYZER_ATTRIBUTE.CORE_DATA_WORD_SIZE_BITS [ .NET | C++ ]
CORE_DATA_WORD_SIZE_BITS [ ASCII | Tcl ]
Note: This Attribute Currently is not being used.
ID: 0x00000006
Size: 32-bits
Access: READ and WRITE
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_ DATA_ENDIANNESS [ C ]
SIGNALYZER_ATTRIBUTE.CORE_ DATA_ENDIANNESS [ .NET | C++ ]
CORE_DATA_ENDIANNESS [ ASCII | Tcl ]
Returns status code for the last SIGNALYZER-LIB operation
ID: 0x00000007
Size: 32-bits
Access: READ ONLY
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_ LAST_STATUS [ C ]
SIGNALYZER_ATTRIBUTE.CORE_ LAST_STATUS [ .NET | C++ ]
CORE_ LAST_STATUS [ ASCII | Tcl ]
Note: This Attribute Currently is not being used.
ID: 0x00000008
Size: 32-bits
Access: READ and WRITE
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_SETUP [ C ]
SIGNALYZER_ATTRIBUTE.CORE_SETUP [ .NET | C++ ]
CORE_SETUP [ ASCII | Tcl ]
Note: This Attribute Currently is not being used.
ID: 0x00000009
Size: 32-bits
Access: READ ONLY
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_ WORDS_IN_RX_BUFFER [ C ]
SIGNALYZER_ATTRIBUTE.CORE_ WORDS_IN_RX_BUFFER [ .NET | C++ ]
CORE_ WORDS_IN_RX_BUFFER [ ASCII | Tcl ]
Note: This Attribute Currently is not being used.
ID: 0x0000000A
Size: 32-bits
Access: READ ONLY
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_ WORDS_IN_TX_BUFFER [ C ]
SIGNALYZER_ATTRIBUTE.CORE_ WORDS_IN_TX_BUFFER [ .NET | C++ ]
CORE_ WORDS_IN_RX_BUFFER [ ASCII | Tcl ]
Sets the mask for the debug log. See debugging user guide for further details.
ID: 0x0000000B
Size: 32-bits
Access: READ and WRITE
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_ LOG_MASK [ C ]
SIGNALYZER_ATTRIBUTE.CORE_ LOG_MASK [ .NET | C++ ]
CORE_ LOG_MASK [ ASCII | Tcl ]
Note: This Attribute Currently is not being used. The only currently supported log type is XML format.
ID: 0x0000000C
Size: 32-bits
Access: READ and WRITE
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_CORE_ LOG_TYPE [ C ]
SIGNALYZER_ATTRIBUTE.CORE_ LOG_TYPE [ .NET | C++ ]
CORE_ LOG_TYPE [ ASCII | Tcl ]
This attribute performs a queue related manipulations.
ID: 0x0000000D
Size: 32-bits
Access: READ and WRITE
Operating Mode: ALL
Compatible Devices: All Signalyzer series devices
Attribute Naming Convention: SIGNALYZER_ATTRIBUTE_ CORE_QUEUE [ C ]
SIGNALYZER_ATTRIBUTE.CORE_ CORE_QUEUE [ .NET | C++ ]
CORE_ CORE_QUEUE [ ASCII | Tcl ]