In the fields of industrial automation, laboratory testing, and process monitoring, high-density and highly reliable digital input/output (DIO) boards have always been the core components of system integration. The on-site environment is often filled with electromagnetic interference, voltage fluctuations, and signal attenuation caused by long-term transmission. Therefore, I/O cards with high isolation and voltage resistance, flexible input and output configurations, and real-time interrupt response capabilities have become the preferred choice for engineers. ADLINK PCIe-7432, as a 32 channel isolated digital input and 32 channel isolated digital output card based on PCI Express bus, provides a cost-effective solution for harsh industrial scenarios with its 2500V RMS isolation voltage, single channel current capability of up to 500mA, and dual channel interrupt triggering mechanism. This article will delve into the hardware architecture, electrical characteristics, register programming model, and key considerations in practical applications of the card, helping engineers quickly grasp its essence of use.
Product positioning and core features
PCIe-7432 is positioned for applications that require a large amount of isolated digital signal acquisition and driving, such as PLC signal expansion, relay array control, solenoid valve driving, status monitoring, and alarm output. Its core characteristics can be summarized as follows:
Channel scale: 32 isolated digital inputs (DI) and 32 isolated digital outputs (DO), both of which are optocouplers isolated, with a withstand voltage of 2500V RMS between the channel and the system.
Input characteristics: Supports DC or AC input (up to 24V), logic low level 0-1.5V, high level 5-24V, input impedance 2.4k Ω, rated input current 10mA (maximum 20mA).
Output characteristics: Adopting Darlington transistor array, open collector output, common ground form. The maximum current for a single channel is 500mA (24V), but when all channels are conducting simultaneously, the total current is limited to 120mA (24V) to ensure heat dissipation. Output withstand voltage of 5V~35V DC, with a switching frequency of up to 10kHz (corresponding to a response of 0.1ms).
Interrupt function: DI channel 0 and channel 1 can independently enable rising edge triggered interrupts, suitable for capturing external events or emergency signals.
Bus and power supply: PCIe x1 interface, plug and play, no need to manually set base address and IRQ. Onboard provides+5V/200mA isolated power supply (for external sensor power supply), with typical power consumption+ 12V@180mA Maximum 500mA.
These specifications enable it to handle scenarios such as production line equipment monitoring, power system remote signal acquisition, and environmental testing equipment control with ease.
Electrical connection and signal adaptation
1. Isolate Digital Input (DI)
Each DI channel is isolated internally by an optocoupler (HCPL-814), and the input side is current type, requiring external driving current. The input terminal can be connected as a current source or current trap mode, depending on the connection of the common terminal (COM). Figure 1-3 in the manual shows a typical connection: the input signal enters the optocoupler LED side through a current limiting resistor (2.4k Ω integrated on the board). When the input voltage is higher than the logic high threshold, the optocoupler conducts and the system detects a low level (internal circuit has been converted). Due to the non-polar design of the input, it is compatible with DC 24V or AC 24V signals. However, it is recommended to connect an external filtering capacitor or use an onboard jumper for AC input (although this card does not explicitly mention a filtering jumper, the input itself has a certain bandwidth, and in practical applications, attention should be paid to the frequency response of AC signals).
Voltage range: 0~24V (AC/DC), logic high. It is recommended to have at least 5V to ensure reliable conduction.
Input current: rated 10mA, maximum 20mA. Overload may damage the optocoupler. It is necessary to connect a suitable external current limiting resistor in series (if the external voltage is higher than 24V).
Common side processing: All DIs share a common isolation ground (IGND), but in the 100 pin SCSI connector of PCIe-7432, each DI's corresponding signal pin and IGND appear in pairs (see pin allocation table for details). During actual wiring, one end of all external sensors can be connected to IGND, and the other end can be connected to the corresponding DI pin; Alternatively, the sensor outputs a high level to drive DI. As long as a circuit is formed, it is sufficient.
2. Isolated Digital Output (DO)
DO is the open drain output of Darlington transistor, with the collector connected to an external load and the emitter connected to isolated ground (IGND). When the output logic is "1", the transistor conducts, and the load current forms a loop through the external power supply → load → DO pin → transistor → IGND; Cut off at logic '0', load disconnected. The manual emphasizes that when the load is inductive (relay coil, motor, solenoid valve), a freewheeling diode (flywheel diode) must be connected in parallel at both ends of the load, and the cathode of the diode should be connected to the positive pole of the external power supply, and the anode should be connected to the DO output pin. At the moment when the transistor is turned off, the inductive energy storage is released through the diode, effectively protecting the output transistor from overvoltage breakdown. Figures 1-4 in the manual clearly indicate the common ground connection and the connection of the freewheeling diode.
Output withstand voltage: 5V~35V DC, recommended to use 24V power supply.
Current limit: The maximum current for a single channel is 500mA, but when all channels are turned on simultaneously, the total current must not exceed 120mA (@ 24V), otherwise overheating protection may be triggered or device life may be shortened. In actual design, the total power consumption should be calculated, and if necessary, grouping drivers or adding external power amplifiers should be used.
Switching speed: 10kHz, suitable for medium and low-speed switch control, such as indicator lights, small relays, solid-state relays, etc.
In addition, the connector provides VDD and V5V pins, where VDD is the external power input (used for output side driving) and V5V is the onboard isolated power output (maximum) 200mA@40 At ℃, it can provide power for low-power sensors or optocouplers, simplifying external wiring.
Register Programming and Interrupt Management
The register access of PCIe-7432 is different from that of a regular 8/16 bit I/O card, as all registers are 32-bit wide and only support 32-bit I/O instructions (such as the x86 IN/OUT instruction specifying a WORD). The base address is automatically assigned by PCIe BIOS without the need for jumper settings. The software uses the _7432_Initial function to enumerate and obtain the base address and IRQ number.
1. Register Address Mapping
Offset address read operation and write operation
Read 32-bit DI status and write 32-bit DO status from Base+0x00
Base+0x40 undefined write arbitrary value clear interrupt
Note: The physical ports corresponding to read and write at offset 0x00 are the same, but they are independently used as input and output buffers. DI data is read-only, DO data is write only (without read back function, if the output status needs to be confirmed, the software needs to keep a copy or provide external feedback).
2. Digital input/output data format
The correspondence between data bits and channels is clear:
DI0~DI7 corresponds to bit0~7 of Base+0
DI8~DI15 correspond to bit0~7 of Base+1
DI16~DI23 correspond to Base+2
DI24~DI31 correspond to Base+3
DO is the same. Therefore, when reading DI, a 32-bit read operation can obtain all 32 channel states, and the same goes for writing DO. This design reduces the number of bus interactions and improves data throughput.
3. Interruption mechanism
Only DI channel 0 and channel 1 support interrupt triggering, and both are sensitive to rising edges (low to high jump). The software can enable or disable interrupts for each channel separately through _7432/Set-INT_Control (parameter int1Flag corresponds to channel 0, int2Flag corresponds to channel 1). When enabled, once the corresponding channel detects a rising edge, the hardware generates a PCIe interrupt request.
Interrupt handling process:
In Windows, call W_7432/INT_Snable and pass in an event handle array (two elements corresponding to two interrupt sources). The driver will set the event signal when an interrupt occurs.
The user thread waits for the event (WaitForSingleObject). After receiving the event, it calls _7432_Get_IRQ_Status to query which channel triggered the interrupt (1 returned by int1Status and int2Status indicates that the corresponding source is valid).
After processing the logic, write any value to Base+0x40 to clear the interrupt (hardware automatically clears). Note that if not cleared, subsequent rising edges of the same channel will not be able to trigger interrupts again.
This interrupt mechanism is suitable for capturing emergency stop signals, counting pulses, or synchronously triggering other actions, avoiding the delay and resource occupation caused by CPU polling.

Software Library and Development Key Points
ADLINK provides PCIS-DASK driver package, supporting Windows 7/8.1 and earlier systems, including DLL and C/C++function libraries. Appendix A lists the main function prototypes (divided into DOS and Windows versions, with different naming prefixes). Summary of key functions:
Initialization: _7432Initial (or Windows version W_7432Initial), returns the number of cards and PCI information structure.
Digital input: _7432_DI reads 32-bit data.
Digital output: _7432_DO writes 32-bit data.
Interrupt control: _7432_Set-INT_Control enables/disables channel 0/1 interrupts.
Retrieve interrupt status: _7432/Get_iRQ_Status to query the current interrupt source.
Interrupt enable/disable: W-7432-IND_Enable Create event handle and bind interrupt; W_7432/INT_Sisable closes interrupt.
Development precautions:
Be sure to install the driver before installing the hardware, otherwise the system may recognize it as an unknown device.
Since registers are 32-bit, U32 or unsigned int type variables should be used in C language to avoid using short or char.
The interrupt service routine should read the DI status as soon as possible and clear the interrupt to avoid missed triggering.
In practical applications, if two interrupt sources need to be used simultaneously, the sources need to be distinguished based on the status flag in interrupt processing, and different branch logics need to be executed.
Practical Guide to Installation and Configuration
1. Hardware installation
Turn off the host power and unplug the power cord.
Select the appropriate PCIe slot, insert the card and secure it.
Connect the external I/O signal cable to the 100 pin SCSI connector (requires compatible cable and terminal board). Pay attention to cable length and shielding. For long-distance transmission, it is recommended to use shielded cables and ensure reliable grounding.
If using external LEDs or low-power loads, a V5V isolated power supply can be used (note current limitations).
2. Jumpers and switches
PCIe-7432 is a pure plug and play design, with no jumpers or switches on the board (not mentioned in the manual), and all configurations are completed through software, simplifying hardware settings.
3. Troubleshooting
The system cannot recognize the board: check PCIe slot compatibility (x1, x4, etc. are acceptable), or update the motherboard BIOS.
DI cannot read signal: Check if the external voltage meets the logic high (above 5V), if the common terminal is connected correctly, and if the input current is sufficient (if necessary, reduce the external current limiting resistor).
DO cannot drive the load: Confirm that the external power supply has been connected to VDD and the load current does not exceed the rated value; Is a freewheeling diode added to the inductive load.
Interrupt unresponsive: Check if the interrupt enable bit is set correctly and if the event handle was successfully created; Confirm that the rising edge of the input signal is steep (to avoid slow changes that may prevent triggering).
Typical application scenarios and selection comparison
1. Industrial equipment monitoring system
In the automated production line, PCIe-7432 is used to collect the status of 32 proximity switches or limit switches, while driving 32 LED indicator lights or small solenoid valves. Its high isolation can effectively resist common mode interference caused by motor start stop, ensuring signal accuracy.
2. Simulation of Remote Terminal Unit (RTU) for Electric Power
In power automation, it is necessary to collect circuit breaker position signals (remote signaling) and issue remote control commands. The DI of PCIe-7432 can be connected to a DC 220V divided 24V signal (requiring external resistance division), and DO can drive intermediate relays to achieve strong and weak electrical isolation.
3. Laboratory data recording
Multiple temperature switch and pressure switch signals need to be recorded in the material testing machine or environmental chamber, while controlling the heater or fan. 32 channels meet multi-channel requirements, and the interrupt function can capture sudden events, such as triggering over temperature protection.
4. Collaboration with PCIe-7256
If the system needs to latch relay outputs and COS interrupts, PCIe-7256 can be used; If more pure isolated IO is needed and high output drive capability is required (such as 500mA), PCIe-7432 is more suitable. Both can coexist in the same system and be distinguished by Board ID or card number.
