Open Collector
When configured for open-collector generation, a channel goes to the high-impedance state for logic 1. For open collector operations, external pull-up resistors are typically used to force a voltage for the logic high state.
Note Differential NI digital waveform generator/analyzers, such as the NI 656x devices, do not support open collector generation. NI 654x devices support open collector generation only for static generation. |
Drive type is a channel-based attribute; channels configured for open-collector output never drive the Generation Voltage High Level in the line. Logic ones found in initial and Idle states force the line to high-impedance for static and dynamic generations.
The main application for open collector generation channels is bidirectional, multidrop busses. Open-collector outputs prevent different gates from attempting to double-drive the line. By using a pull-up resistor, the bus is high if all connected devices are high, and the bus is low if any device drives a zero. This setup is generally called wired-AND for positive-true logic and wired-OR for negative-true logic. Some examples of busses implemented with open-collector outputs include I2C and SMBus.
Interfacing with a wired logic bus requires you to consider the voltages that are generated at the bus. These voltages depend on four factors: value of the pull-up resistor, value to which the line is "pulled up", configured voltage for low state, and configured input impedance. The following diagram shows how these factors interact.
Typical applications will have a Generation Voltage Low Level of 0.0 V, and Rin as high impedance; Rpull must be carefully chosen to get the desired voltage values in the bus. Refer to your device specifications for the Rin for your device. Typical values for a pull-up resistor in I2C range between 2.4 kΩ and 3.9 kΩ.
NI 655x devices have per cycle, per pin tristate functionality, which allows the generation of zeros, ones, and tristate in the same channel. Open collector is limited to zero and tristate; however, these two features can operate simultaneously. Using per cycle tristate in a channel configured for open-collector generation causes the line to be tristated by both Z's and 1's found in the waveform.