ADC-16
USER
GUIDE
DIM
SHARED
KFREEFRAME AS INTEGER, KSETBUF AS INTEGER
DIM
SHARED
KSETSTARTSTOPG AS INTEGER, KGETSTARTSTOPG AS INTEGER
DIM
SHARED
KSETCHN AS INTEGER, KGETCHN AS INTEGER
DIM
SHARED
KSETSTARTSTOPCHN AS INTEGER
DIM
SHARED
KGETSTARTSTOPCHN AS INTEGER
DIM
SHARED
KSETG AS INTEGER, KGETG AS INTEGER
DIM
SHARED
KSETCHNGARY AS INTEGER
DIM
SHARED KCHKFRAME AS INTEGER
DIM
SHARED KINITFRAME AS INTEGER, KSYNCSTART AS INTEGER
DIM
SHARED
KINTSTART AS INTEGER
DIM
SHARED KINTSTATUS AS INTEGER, KINTSTOP AS INTEGER
DIM
SHARED
KGETDOFRAME
AS
INTEGER, KGETDOCURVAL AS INTEGER
DIM
SHARED
KMOVEDATABUF
AS
INTEGER
DIM
SHARED
=READ
AS INTEGER
DIM
SHARED
KDIREAD AS INTEGER, WOWRITE AS INTEGER
DIM
SHARED KFORMATCHNGARY AS INTEGER
DIM
SHARED KRESTORECHNGARY AS INTEGER
-
STEP 4 : Define
ALL
local variables
required
by
the
program.
1
Avoid &daring and using
QBASIC
variables on
the
fly.
DIM NUMOFBRDS AS INTEGER
rds
defined in
.CFG
file
DIM ERRE'LAG AS INTEGER Holds
function error returns
DIM DEVHANDLE
AS
LONG
Device Handle
-
all handles are 4 bytes
DIM ADFRAME AS LONG
DIM STARTCH AS INTEGER
DIM STOPCH AS INTEGER
DIM GAIN AS INTEGER
DIM
X
AS INTEGER
DIM DATABUFFER(20) AS INTEGER
DIM
Samples
AS LONG
DIM BRDNUM AS INTEGER
Call
Setup
Initialize
entry variables
DEF SEG = VARSEG(DriverAry(0))
Get
location
of
user array, and
BLOAD "ADC16Q. BIN",
0
Load the driver into user array
I,,---,,,,,,,,,,--,--------------------------------------------------------
!
STEP 6 : Initialize the internal data
tables
with
the
information
I
contained in the configuration file
ADCl6.CFG.
A$
=
"ADC16.CE'G"
+
CHR$(o)
CALL ABSOLUTE (A$, NUMOFBRDS, ERRE'LAG, ADCl6DEVOPEN)
IF ERRE'LAG
<>
0
PRINT "ERROR
It;
HEX$(ERRFLAG) : STOP
BRDNTJM
=
0
CALL ABSOLUTE (BRDNUM, DEVHANDLE, ERRFLAG, ADCl6GETDEVHANDLE)
IF (ERRFLAG
<>
0)
THEN PRINT "ERROR
HEX$
(ERRFLAG) : STOP
I,,,---,,,,,-,,,,,,,,,,,,,------------------------------------------------------
STEP
8
:
To
perform
a
FRAME
based Analog Input function,
first
1
get a FRAME
handle and then initialize the parameters for
I
the
FRAME.
CALL ABSOLUTE (DEVHANDLE, ADSET, ERRE'LAG, KGETADFRAME)
IF ERRFLAG
<>
0
THEN PRINT "ERROR
'I;
ERRFLAG: STOP
6-18