Rockwell Automation 6008-SV2R VMEbus remote I/O Scanner User Manual

Page 154

Advertising
background image

Chapter

Programming the Scanner

8

8Ć20

} else if (chan–>ScannerMode == MODE_SUPERSET) {

/* output table at base of global memory */
chan–>OutputTable = &base[SVS_OTABLE_OFFSET];

/* input table at offset 100H */
chan–>InputTable = (char far *) &base[SVS_ITABLE_OFFSET];

/* control/status area at offset 200H */
chan–>ControlStatusArea = (char far *) &base[SVS_CSA_OFFSET];

/* general data area at offset 220H */
chan–>GeneralDataArea = (char far *) &base[SVS_GDA_OFFSET];

/* continuous block transfer write table at offset 300H */
chan–>ConBTWTable = (char far *) &base[SVS_CONBTW_OFFSET];

/* continuous block transfer read table at offset C00H */
chan–>ConBTRTable = (char far *) &base[SVS_CONBTR_OFFSET];

/* reset area at offset 1FBCH */
chan–>ResetArea = (char far *) &base[SVS_RESET_OFFSET];

/* vme ID area at offset 1FC0 */
chan–>VmeIdArea = (char far *) &base[SVS_VIA_OFFSET];

}

return;

}

/*
**
** UNMAP_CHANNEL() –– unmap a channel’s VME shared memory
**
**

This function accepts a channel structure as input, and restores the EPC’s VMEbus

**

window to the state it had when the channel was last mapped.

**
**

parameters:

pointer to channel structure

**

return value:

none

**
*/

void
unmap_channel (channel far *chan)
{

EpcRestState(&chan–>stash);
return;

}

Advertising
This manual is related to the following products: