Re: New buffer reading behaviour in continuous acquisition mode?

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Thursday 30 January 2003 08:14 am, Herman Bruyninckx wrote:
>
> So, this is my summary of our findings.
> Comedi has "commands" and "instructions". A command programs the
> hardware of the bord to _autonomously_ do acquisition; i.e., the
> software can go and do other things while a command is executing,
> interrupted from time to time by DMA or an ISR.
> In an instruction however, the software is doing acquisition _in busy
> waiting_. (At least in the current implementation of the NI driver where
> is see a polling on the buffer-not-empty flag.)

There are several types of insn, specified by the value of comedi_insn.insn.
The possible values are defined in comedi.h:

#define INSN_READ		( 0 | INSN_MASK_READ)
#define INSN_WRITE		( 1 | INSN_MASK_WRITE)
#define INSN_BITS		( 2 | INSN_MASK_READ|INSN_MASK_WRITE)
#define INSN_CONFIG		( 3 | INSN_MASK_READ|INSN_MASK_WRITE)
#define INSN_GTOD		( 4 | INSN_MASK_READ|INSN_MASK_SPECIAL)
#define INSN_WAIT		( 5 | INSN_MASK_WRITE|INSN_MASK_SPECIAL)
#define INSN_INTTRIG		( 6 | INSN_MASK_WRITE|INSN_MASK_SPECIAL)

Above you describe the behaviour of INSN_READ and INSN_WRITE.  What you want
to be doing is using a INSN_CONFIG to modify the behaviour of commands.

> And the API is indeed available to program a sequence of say 6
> measurements in one instruction (or instruction list). But, one looses
> the real-time determinism when doing this with instructions, and/or the
> performance.

No, I'm not suggesting you use INSN_READ, you still get the data using
commands.

- --
Frank


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE+OVIs5vihyNWuA4URAp6oAKDbM2+sikZj+Ti45jJ2GblVphpBUwCfYA4J
gDckdJ2lFfMP4j/Gr6bTSaQ=
=goOZ
-----END PGP SIGNATURE-----

Received on 2003-01-30Z16:26:20