RTC
®
5 PC Interface Board
Rev. 1.9 e
6 Developing User Applications
88
Error handling takes place separately for each board
and each application (user program). A reset_error
will not delete the error code of another application
with current access rights to the specified board. If
access rights are exchanged, this data will not also be
exchanged (neither will any other board data be
exchanged).
Error handling only takes place during initialization
and when loading onto the RTC
®
5, but not during
execution of a list program.
An example program of how to incorporate board-
specific error variables is provided in the description
of the get_error command.
Some control commands (e.g. init_rtc5_dll,
load_correction_file or load_program_file) addi-
tionally return a special error code that will not be
buffered and must therefore be immediately eval-
uated or discarded by the application.
6.8.1 Download Verification
Verification of RTC
®
5 communication is vital particu-
larly in medical applications. For this purpose, you
can activate download verification separately for
each board via set_verify. This, of course, results in
extended download times.
If download verification is activated and an inconsis-
tency is found, then the error code
RTC5_VERIFY_ERROR
will be set, which can be queried
via get_last_error or get_error. Certain operations
might immediately abort and the board would then
no longer be functional (e.g. if the
load_program_file command aborts).
With download verification activated, the following
checks are performed (also note the comments in the
set_verify command description):
Loading of List Commands
For list-command downloads, each download is read
back and compared (for equality) against the sent
command. Here, only transfer to the board itself is
checked; automatic parameter adjustments (e.g.
clipping) aren’t taken into account.
Loading of Control Commands
For control commands, the corresponding param-
eters are read back and compared for equality
against the sent parameters. Automatic parameter
adjustments aren’t taken into account.
load_program_file
For sending of the command load_program_file, the
following are checked:
• The binary support file
RTC5DAT.dat
is tested via
a checksum for file correctness and PCI-transfer
correctness.
• The firmware
RTC5RBF.rbf
is only checked via a
bitwise transfer handshake. No other checking is
possible.
• Each loaded section of the program file
RTC5OUT.out
is immediately read back for
checking. If an error is detected, then the loading
process will abort. This functionality requires
driver version 1.0.4.0 or higher (see set_verify
command description).
Loading of Correction Files
For loading via load_correction_file, the integrity of
the to-be-loaded correction file is checked (via the
checksum) and the transfer itself checked for
correctness by an immediate read back of the
correction table. For this function, the correction file
must contain a checksum (see set_verify command
description).
Loading of Tables
For loading other tables (e.g. via
load_varpolydelay), the transfer is checked for
correctness by an immediate read back of the table.
In addition to the get_last_error error code
RTC5_VERIFY_ERROR
, the load command’s corre-
sponding error return value might also get set.