Chapter 4 Register-Level Programming
© National Instruments Corporation 4-13 PC-DIO-24 User Manual
Bit Name Description (continued)
4 INTE2 Interrupt Enable Bit for Input—If this bit is set, interrupts are
enabled from the 82C55A for IBFA. Controlled by bit set/reset of
PC4.
3 INTRA Interrupt Request Status—If INTE1 is high and IBFA is high, this
bit is high, indicating that an interrupt request is asserted for input
transfers. If INTE2 is high and OBFA* is high, this bit is high,
indicating that an interrupt request is asserted for output transfers.
2–0 I/O Input/Output—Extra I/O status lines available if port B is not
configured for mode 1.
At the digital I/O connector, port C has the following pin assignments when in mode 2.
PC7
PC6
PC5
PC4
PC3
PC2
PC1
PC0
OBFA*
ACKA*
IBFA
STBA*
INTRA
I/O
or
Hand-
shaking
Group A
Group B
Mode 2 Programming Example
Main() {
#define BASE_ADDRESS 0x210 /* Board located at address 210. */
#define PORTAoffset 0x00 /* Offset for port A */
#define PORTBoffset 0x01 /* Offset for port B */
#define PORTCoffset 0x02 /* Offset for port C */
#define CNFGoffset 0x03 /* Offset for CNFG */
register unsigned int porta, portb, portc, cnfg;
char valread; /* Variable to store data read from a
port */
/* Calculate register addresses. */
porta = BASE_ADDRESS + PORTAoffset;
portb = BASE_ADDRESS + PORTBoffset;
portc = BASE_ADDRESS + PORTCoffset;
cnfg = BASE_ADDRESS + CNFGoffset;