Chapter 4
Programming
© National Instruments Corporation
4-89
AT-MIO-16D User Manual
/* EXAMPLE 1*/
outp(cnfg,0xC0);
/* Port A is in Mode 2. */
while (!(inp(portc) & 0x80));
/* Wait until OBFA* is set,
indicating that the data last
written to Port A has been
read.*/
outp(porta,0x67);
/* Write the data to Port A. */
while (!(inp(portc) & 0x20));
/* Wait until IBFA is set, indicating
that data is available in Port A to
be read. */
valread = inp(porta);
/* Read data from Port A. */
}
Single Bit Set/Reset Feature
You can set or reset any of the eight bits of Port C with one control word. This feature generates
status and control for Port A and Port B when operating in Mode 1 or Mode 2.
Interrupt Programming Examples
The following examples show the process required to enable interrupts for several different
operating modes. The interrupt handling routines and interrupt installation routines are not
included. See the IBM Personal Computer AT Technical Reference manual for additional
information.
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_A PORTAoffset;
portb = BASE_A PORTBoffset;
portc = BASE_A PORTCoffset;
cnfg = BASE_A CNFGoffset;
/* EXAMPLE 1–Set up interrupts for Mode 1 input for Port A. Select PC6 as the
interrupt enable bit. */
outp(cnfg,0xB0);
/* Port A is an input in Mode 1. */
outp(cnfg,0x09);
/* Set PC4 to enable interrupts from
82C55A. */
outp(cnfg,0x0C);
/* Clear PC6 to enable interrupts. */
Содержание AT-MIO-16D
Страница 16: ......
Страница 23: ......
Страница 185: ......
Страница 206: ......
Страница 207: ......
Страница 208: ......
Страница 209: ......
Страница 210: ......
Страница 211: ......
Страница 212: ......
Страница 213: ......
Страница 214: ......
Страница 215: ......
Страница 216: ......
Страница 217: ......
Страница 218: ......
Страница 219: ......
Страница 220: ......
Страница 221: ......
Страница 222: ......
Страница 223: ......
Страница 224: ......
Страница 225: ......
Страница 226: ......
Страница 227: ......
Страница 228: ......
Страница 229: ......
Страница 230: ......
Страница 231: ......
Страница 232: ......
Страница 233: ......
Страница 234: ......
Страница 235: ......
Страница 236: ......
Страница 237: ......
Страница 238: ......
Страница 239: ......
Страница 240: ......
Страница 241: ......
Страница 242: ......
Страница 243: ......
Страница 244: ......
Страница 246: ......
Страница 247: ......
Страница 248: ......
Страница 249: ......
Страница 250: ......
Страница 251: ......
Страница 252: ......
Страница 253: ......
Страница 254: ......
Страница 255: ......
Страница 256: ......
Страница 257: ......
Страница 258: ......
Страница 259: ......
Страница 260: ......
Страница 261: ......