EasyManua.ls Logo

abaco systems CEI-520 - Page 151

Default Icon
191 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Program Interface Library AR_SET_PRELOAD_CONFIG
CEI-100/CEI-200/CEI-x20 User’s Manual 139
Some coordination is required when using multiple processes in
conjunction with a single CEI-x20 device. A single "board" process
should be launched first, followed later by one or more "channel"
processes. The "board" process should load the board (AR_LOADSLV),
configure board-specific parameters (e.g., AR_SET_TIMERRATE,
AR_TIMETAG_CONTROL, etc.), and launch the board (AR_GO). After
the "board" process launches the board using AR_GO, it is then
permissible to launch one or more "channel" processes. A "channel"
process should first attach to the board (AR_LOADSLV) and then execute
operations strictly confined to the particular channel(s) that the process is
associated with (e.g., AR_GETWORD, AR_PUTWORD,
AR_SET_CONFIG, etc.). When finished, the "channel" process should
call AR_CLOSE and terminate. The "board" process should remain
running until all "channel" processes have terminated. After that, the
"board" process should call AR_CLOSE and terminate. All processes
must exercise caution when modifying board settings that may impact
other concurrently-running processes.
Note that board setup/initialization is only executed in AR_LOADSLV if
no other processes have the board open. If another process has the board
open (that is, if another process has opened the board using
AR_LOADSLV but hasn't yet closed the board using AR_CLOSE),
AR_LOADSLV attaches to the device without re-initializing the board or
modifying board settings. Similarly, AR_CLOSE only shuts down the
board if no other processes have the board open. If another process has the
board open, AR_CLOSE detaches from the board without shutting it
down. Thus, board settings are preserved across "channel" process
invocations of AR_LOADSLV and AR_CLOSE. Note the importance of
matching every call to AR_LOADSLV with a call to AR_CLOSE in
multi-process mode.
Multi-process mode is only required when accessing a single board from
multiple processes. If multiple boards are installed, AR_CONC_NONE
concurrency mode can be used as long as only one process and thread
interfaces with each board.
If 'item' is ARU_INSTALL_INT_HANDLER, the 'value' parameter
indicates whether or not an internal interrupt handler should be installed
when the calling process executes AR_LOADSLV. If 'value' is
AR_FALSE (the default value), no int handler should be installed. If
'value' is AR_TRUE, AR_LOADSLV attempts to install an internal
interrupt handler if no internal interrupt handler has already been installed.
Note that internal interrupt handling is only supported by the CEI-820 and
is only available under Red Hat Ent 4 (kernels 2.6.17.13, 2.6.18, 2.6.20.14,
2.6.22.2, and 2.6.22.19 only). If internal interrupt handling is requested for
an unsupported board type or operating system, AR_LOADSLV fails.
Internal interrupt handling functionality was added to support receiver
'await data' mode; no user application interrupt handling capability is
provided. Either multi-process or multi-thread concurrency mode must be
Artisan Technology Group - Quality Instrumentation ... Guaranteed | (888) 88-SOURCE | www.artisantg.com

Table of Contents

Related product manuals