3.3.8 Read/Write 8-bit data Register
(Read/Write):wBase+0xc0/0xc4/0xc8/0xd0/0xd4
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
D7 D6 D5 D4 D3 D2 D1 D0
Note. Refer to Sec. 3.1 for more information about wBase.
There are five/three 8-bit I/O ports in the OME-PIO-D56/OME-PIO-D24. Each
port is easy to read/write to by access to their own data registers.
outportb(wBase+0xc0,Val);
/* write to D/O port */
Val=inportb(wBase+0xc0);
/* read from D/I port */
outportb(wBase+0xcc,0x07); /* configure Port0~Port2 as DO port */
outportb(wBase+0xc0,i1); /* write to Port0 */
outportb(wBase+0xc0,i2); /* write to Port1 */
outportb(wBase+0xc0,i3); /* write to Port2 */
outportb(wBase+0xcc,0x01); /* configure Port0 as DO port */
/* Port1~Port2 as DI port */
outportb(wBase+0xc0,i1); /* write to Port0 */
j2=inportb(wBase+0xc4); /* read Port1 */
j3=inportb(wBase+0xc8); /* read Port2 */
l=inportb(wBase+0xd0); /* read CON2 Low byte */
h=inportb(wBase+0xd4); /* read CON2 High byte */
Val=(h<<8)+l; /* Val is 16 bit data */
outportb(wBase+0xd0,Val); /* write to CON1 Low byte */
outportb(wBase+0xd4,(Val>>8)); /* write to CON1 high byte */
OME-PIO-D56/OME-PIO-D24 User Manual (Ver.2.1, Oct/2003)
---- 37