The NI 5751 CLIP provides access to 16 analog input channels, eight digital input lines, and eight digital output lines. This CLIP also contains a SPI interface to program the ADC registers.
In the NI 5751 CLIP, each Sample Clock cycle generates a sample from the analog input channels. The following clock sources are selectable using the Sample Clock Select control:
This CLIP only supports external Sample Clock rates from 30 MHz to 50 MHz. Each 14-bit sample is output to LabVIEW as an I16 data type. The 14-bit data is left-justified and padded with two zeros in the LSBs. The data is clocked out of the CLIP on IO Module Clock 0.
The FlexRIO driver installation includes a variety of example projects to help you get started with the NI 5751 CLIP items. To access these examples in NI Example Finder, open LabVIEW and select Help»Find Examples, then select Hardware Input and Output»FlexRIO»IO Modules. By default, the example projects use the I/O signals exposed by the NI 5751 CLIP items.
The following example projects are available for use with the NI 5751 CLIP items. These examples demonstrate how to get data from the input and output terminals on the adapter module, and demonstrate some of the features of the ADCs on the NI 5751 adapter module.
For more information on using an example project to get started with the NI 5751, refer to the NI 5751R User Guide and Specifications document, available at the Start menu and at ni.com/manuals.
The following table describes the I/O signals for the NI 5751 CLIP.
Port Name | Data Type | Function/Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
AI A <0..7> | I16 | Data from each of the eight channels on ADC A. If you are using the NI 5751 CLIP, data is clocked out of the CLIP on IO Module Clock 0. If you are using the NI 5751 Multidevice Synchronization CLIP, data is clocked out of the CLIP on DStarA. After Initialization Done is asserted, the data is valid on every clock cycle. | ||||||||||
AI B <8..15> | I16 | Data from each of the eight channels on ADC B. If you are using the NI 5751 CLIP, data is clocked out of the CLIP on IO Module Clock 0. If you are using the NI 5751 Multidevice Synchronization CLIP, data is clocked out of the CLIP on DStarA. After Initialization Done is asserted, the data is valid on every clock cycle. | ||||||||||
DI <0..7> | Boolean | Digital Input. Refer to the Digital Input Terminals section of the NI 5751R User Guide and Specifications for more information. | ||||||||||
DO <0..7> | Boolean | Digital Output. Refer to the Digital Output Terminals section of the NI 5751R User Guide and Specifications for more information. | ||||||||||
Digital Output Enable | Boolean | Enables the digital outputs. | ||||||||||
IO Module Clock 0 | FPGA Clock | The ADC Sample Clock. | ||||||||||
Sample Clock Select | U8 | Selects which clock is used as the ADC Sample Clock. When
Sample Clock Select is changed, the data capture circuit is
reinitialized.1 This signal should be inside a single-cycle Timed Loop with the 40 MHz onboard clock configured as the clock source.
| ||||||||||
Force Initialization | Boolean | Forces a CLIP initialization.1 If you are using an external clock and the clock frequency changes, this signal must be manually asserted. ADC registers retain their values when Force Initialization is manually asserted. This signal should be inside a single-cycle Timed Loop with the 40 MHz onboard clock configured as the clock source. | ||||||||||
Initialization Done | Boolean | When Initialization Done is asserted, the CLIP has completed initialization1. | ||||||||||
AdcErrorA | Boolean | When ADC Error A is asserted, the width of the sampling window from ADC A is less than its required value, which does not guarantee correct data sampling. This condition could be caused by a noisy clock source, a damaged ADC, or an incompatible FlexRIO FPGA module. ADC Error A is a sticky bit and is cleared upon reinitialization.1 | ||||||||||
AdcErrorB | Boolean | When ADC Error B is asserted, the width of the sampling window from ADC B is less than its required value, which does not guarantee correct data sampling. This condition could be caused by a noisy clock source, a damaged ADC, or an incompatible FlexRIO FPGA module. ADC Error B is a sticky bit and is cleared upon reinitialization.1 | ||||||||||
PLL Unlocked | Boolean | Indicates that the PLL has become unlocked since the board was initialized. When the PLL is unlocked, IO Mod Clock 0 is disabled. When set, PLL Unlocked is cleared upon reinitialization.1 | ||||||||||
SPI Idle2 | Boolean | Indicates the SPI engine is idle and ready for a SPI read or write transaction. This signal should be inside a single-cycle Timed Loop with the 40 MHz onboard clock configured as the clock source. | ||||||||||
SPI Device Select2 | U8 |
Selects which ADC the SPI port will communicate with. This signal should be inside a single-cycle Timed Loop with the 40 MHz onboard clock configured as the clock source.
|
||||||||||
SPI Address2 | U8 | The address of the register in the selected ADC. This signal should be inside a single-cycle Timed Loop with the 40 MHz onboard clock configured as the clock source. | ||||||||||
SPI Write Data2 | U16 | Data to be written to the register in the selected ADC. This signal should be inside a single-cycle Timed Loop with the 40 MHz onboard clock configured as the clock source. | ||||||||||
SPI Write2 | Boolean | Begin SPI write transaction. This signal should be inside a single-cycle Timed Loop with the 40 MHz onboard clock configured as the clock source. |
1 For more information, refer to the Initialization section.
2 For more information, refer to the Accessing SPI Registers section.
During initialization, the CLIP items perform the following tasks:
The user FPGA code must manually start initialization in the following instance:
To manually start initialization, the user FPGA code must assert Force Initialization.
![]() |
Note When initialization starts, the Initialization Done signal deasserts within 100 ns. Initialization Done does not assert again until initialization has completed. You can expect a delay of up to two seconds before Initialization Done asserts again, depending on your clock rate. If you read the Initialization Done indicator before it has had time to deassert (100 ns), you may get a false positive error. |
The CLIP performs initialization automatically in the following instances:
FPGA IO is enabled automatically when the CLIP is loaded into the FPGA. You can also programmatically enable and disable the FPGA IO from the host VI. When FPGA IO is enabled, the CLIP resets all ADC registers.
![]() |
Caution Do not execute user FPGA code using IO Module Clock 0 until Initialization Done is True. While Initialization Done is False, the clocks are not stable. |
If the user FPGA code changes the Sample Clock Select signal, the CLIP begins initialization automatically; you do not need to assert Force Initialization.
![]() |
Note When initialization starts, the Initialization Done signal deasserts within 100 ns. Initialization Done does not assert again until initialization has completed. You can expect a delay of up to two seconds before Initialization Done asserts again, depending on your clock rate. If you read the Initialization Done indicator before it has had time to deassert (100 ns), you may get a false positive error. |
The ADC register maps are included in the AD9252 datasheet. For more information and SPI functionality for the AD9252, refer to the following application note on Analog Devices' website: AN-877 Application Note, Interfacing to High Speed ADCs via SPI.
SPI reads from the AD9252 are not supported on the NI 5751. The SPI access does not actually take effect until the software transfer bit (bit 0) of the device_update (offset 0xFF) register is written.
To access a register in an ADC, complete the following steps:
Helpful
Not Helpful