A.1 Supported GPIO Register
Below are detailed descriptions of the GPIO addresses and a programming sample.
A.1.1 GPIO Registers
CRF0 (GP10-GP17 I/O selection register. Default 0xFF)
When set to a '1', respective GPIO port is programmed as an input port. When set to a '0', respective GPIO port is programmed as an output port.
CRF1 (GP10-GP17 data register. Default 0x00)
If a port is programmed to be an output port, then its respective bit can be read/writ- ten.
If a port is programmed to be an input port, then its respective bit can only be read.
CRF2 (GP10-GP17 inversion register. Default 0x00)
When set to a '1', the incoming/outgoing port value is inverted.
When set to a '0', the incoming/outgoing port value is the same as in data register.
Extended Function Index Registers (EFIRs)
The EFIRs are
Extended Function Data Registers (EFDRs)
the EFDRs are read/write registers with port address 2Fh or 4Fh on PC/AT systems.
A.1.2 GPIO Example program-1
Enter the extended function mode, interruptible
MOV DX,2EH
MOV AL,87H
OUT DX,AL
OUT DX,AL
Configured logical device 7 (GP10~GP17), configuration register CRF0,CRF1,CRF2
MOV DX,2EH
MOV AL,07H; point to Logical Device Number Reg.
OUT DX,AL
MOV DX,2FH
MOV AL,07H; select logical device 7 OUT DX,AL;
MOV DX,2EH
MOV AL,F0
OUT DX,AL
MOV DX,2FH
MOV AL,00H; 01:Input 00:output for GP10~GP17
OUT DX,AL
MOV DX,2EH
48 |