E.1 introduction, E.2 dio connector pinouts, E.3 assembly language example – IEI Integration IMBA-G410 v2.00 User Manual

Page 161: Ntroduction, Onnector, Inouts, Ssembly, Anguage, Xample

Advertising
background image

2012/1/202012/1/20

IMBA-G410 ATX Mo th e rb o a rd

P a g e 147

E.1 In tro d u c tio n

The digital I/O is used for machine control and automation.

E.2 DIO Co n n e c to r P in o u ts

Located in the Connectors section of this document.

E.3 As s e m b ly La n g u a g e Exa m p le

;**************************************************

; DIO Port:

0A21h[3:0] (4 Out)

;

0A22h[3:0] (4 In)

;**************************************************

;==================================================

; Get current input and output values into AL register

; AL: bit0~bit3 as output value

;

bit4~bit7 as Input value

;==================================================

mov

dx, 0A21h

; GPIO output I/O base address

in

al, dx

; Get output status

jmp

$+2

; Wait

jmp

$+2

; Wait

and

al, 0Fh

mov

bl, al

; Move al to bl temporarily

inc

dx

; sets dx to 0A22h

in

al, dx

; Get input status

jmp

$+2

; Wait

jmp

$+2

; Wait

and

al, 0Fh

rol

al, 4

; Shift input values over

or

al, bl

; Merge all results into AL

; AL: bit0~bit3 as output value

; bit4~bit7 as input value

;==================================================

; Output value (x) to GPIO

; AL: bit0~bit3 as output value

;==================================================

mov

al, 0xh

; x is the output value (0 ~ Fh)

mov

dx, 0A21h

; GPIO output I/O base address

out

dx, al

; bit0 ~ bit3 as Output value

; bit4 ~ bit7 are Reserved

Advertising