4.2 The I/O Address Map
The I/O address for PIO/PISO series cards is automatically assigned by the ROM
BIOS of the main board. The I/O address can also be re-assigned by user.
It is
strongly recommended that users don’t change the I/O address.
The Plug &
Play BIOS will assign the proper I/O address to each PIO/PISO series card.
The detailed I/O register address mapping for the PCI-
P8R8/P16R16/P16C16/P8POR8/P16POR16 and PEX-P8POR8i/P16POR16i card
is as follows:
BAR 2: DI/DO Register
Register Function Script
Bar No. Offset
Name
Operation
Access
0x00 DI
Port
R 16-bit
0x00 DO
Port
W 16-bit
0x0C
Read D/O Readback
R
16-bit
2
(DIO)
0x3C Read
Card
ID
R
16-bit
4.2.1 Digital Output/Digital Input
The sample code of DI/DO is given as follows:
// DI/DO function of PCI-P16R16/P16C16/P16POR16 and PEX-P16POR16i series
void P16R16_DO(WORD BaseAddr, WORD wOutData)
{
outport (BaseAddr, wOutData);
}
WORD P16R16_DI(WORD BaseAddr)
{
DigitalIn=inportb(BaseAddr);
}
// DI/DO function of PCI-P8R8 /P8POR8 and PEX-P8POR8i series
void P8R8_DO(WORD BaseAddr, WORD wOutData)
{
outportb(BaseAddr, wOutData);
}
PCI-P16R16 Series User Manual (Ver.2.8, Apr. 2011, PMH-013-28)
34