Measurement-computing Personal488 rev.3.0 For DOS & Windows 3.Xi Manual de usuario Pagina 131

  • Descarga
  • Añadir a mis manuales
  • Imprimir
  • Pagina
    / 400
  • Tabla de contenidos
  • SOLUCIÓN DE PROBLEMAS
  • MARCADORES
  • Valorado. / 5. Basado en revisión del cliente
Vista de pagina 130
8M. Data Transfers II. SOFTWARE GUIDES - 8. Driver488/DRV
II-116 Personal488 Users Manual, Rev. 3.0
This reads data into
W%
until either
20
characters have been received, or
EOI
has been detected.
However, if
EOI
causes the transfer to stop, we can discover how much data has been received by using
the
BUFFERED
command:
PRINT#1,"BUFFERED"
INPUT#2,N
The number of bytes transferred is read into
N
. Now we can use this value to send the read data out to
device
17
:
PRINT#1,"OUTPUT17#";N;"BUFFER";VARSEG(W%(1));":";VARPTR(W%(1));"EOI"
Note that the variable
N
has been used in place of the literal
20
to specify how many bytes to transmit.
Clearly,
BUFFERED
I/O is more complex than simple direct I/O. However, it can be very useful.
BUFFERED
I/O is normally much faster than direct I/O because the characters go directly from memory
to the bus under the control of Driver488/DRV without the intervention of BASIC or DOS. Also,
BUFFERED
I/O is not limited by the 255-character limit on
INPUT$
that can hinder binary
ENTER
s.
Asynchronous Transfers
Driver488/DRV can return to the users program while a transfer is in progress. This is useful
whenever the transfer takes a substantial amount of time, and other processing could proceed while
waiting. For example, suppose a certain bus device can transfer only 1000 bytes per second. If there
are 10,000 bytes to transfer, it takes 10 seconds to complete the transfer. The following statements
might be used to receive this data:
DIM R%(5000)
PRINT#1,"ENTER 09 #10000 BUFFER"; DS%;
:; VARPTR(R%(1)); CONTINUE
Now do other work while
the transfer is continuing
PRINT#1,"WAIT"
The
CONTINUE
keyword tells Driver488/DRV to return to the program after setting up the transfer.
The program is then free to do other processing, as long as it does not need access to the IEEE 488 bus.
Finally, when the program is ready to process the received data it performs a
WAIT
to check that the
data has been completely received. In this way,
CONTINUE
transfers overlap IEEE 488 bus data
transfers with program execution.
The use of DMA and interrupts requires proper hardware and software configuration. For more
information, refer to the Sub-Chapter Installation & Configuration early in this Chapter.
8N. Operating Modes
Topics
Introduction...................................................................................II-116
Operating Mode Transitions......................................................II-116
System Controller Mode..............................................................II-117
System Controller, Not Active Controller Mode....................II-117
Not System Controller Mode......................................................II-119
Active Controller, Not System Controller Mode....................II-119
Vista de pagina 130
1 2 ... 126 127 128 129 130 131 132 133 134 135 136 ... 399 400

Comentarios a estos manuales

Sin comentarios