
26
•
Control Programming
To set timer
MOV
DX , INDEX
; DATA OF INDEX SAME AS I/O
; ADDRESS THAT SET BY SW1
MOV
AL , C531
; C531 = 81H
OUT
DX , AL; INDEX TO COUNT 1
JMP
$+2
; DELAY
INC
DX
; POINT TO DATA READ/WRITE
; ADDRESS
MOV
AL , 30H
; LOAD LEAST BYTE 30H
OUT
DX , AL; LOAD LEAST BYTE
JMP
$+2
; DELAY
MOV
AL , 10H
; LOAD MOST BYTE 10H
OUT
DX , AL; LOAD MOST BYTE
JMP
$+2
; DELAY
DEC
DX
; POINT TO INDEX ADDRESS
MOV
AL , C532
; C532 = 82H
OUT
DX , AL; INDEX TO COUNT 2
JMP
$+2
; DELAY
INC
DX
; POINT TO DATA READ/WRITE
; ADDRESS
MOV
AL , 10H
; LOAD LEAST BYTE 10H
OUT
DX , AL; LOAD LEAST BYTE
JMP
$+2
; DELAY
MOV
AL , 00H
; LOAD MOST BYTE 00H
OUT
DX , AL; LOAD MOST BYTE
JMP
$+2
; DELAY
To clear and enable interrupt
MOV
DX , INDEX
; DATA OF INDEX SAME AS I/O
; ADDRESS THAT SET BY SW1
MOV
AL , CTRL0
; CTRL0 = 3H
OUT
DX , AL; SET INDEX TO GROUP 1 8255
; CONTROL WORD
JMP
$+2
; DELAY
INC
DX
; POINT TO DATA READ/WRITE
; ADDRESS
IN
AL , DX; DUMMY READ TO CLEAR
; AND ENABLE INTERRUPT
3.4.2
Programming in C language
The following parts are example programs written in C language for
reference.
Note :
These softwares are only partial of complete program, so you can
not execute them directly.
Содержание PET-48DIO
Страница 1: ...NuDAQ PET 48DIO Programmable 48 bit DIO Event and Timer Cards User s Guide...
Страница 2: ......