Xenomai API  2.6.3
instruction.h File Reference

Analogy for Linux, instruction related features. More...

Include dependency graph for instruction.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  a4l_instruction
 Structure describing the synchronous instruction. More...
struct  a4l_instruction_list
 Structure describing the list of synchronous instructions. More...

Macros

#define A4L_INSN_WAIT_MAX   100000
 Maximal wait duration.
Instruction type

Flags to define the type of instruction

#define A4L_INSN_READ   (0 | A4L_INSN_MASK_READ)
 Read instruction.
#define A4L_INSN_WRITE   (1 | A4L_INSN_MASK_WRITE)
 Write instruction.
#define A4L_INSN_BITS
 "Bits" instruction
#define A4L_INSN_CONFIG
 Configuration instruction.
#define A4L_INSN_GTOD
 Get time instruction.
#define A4L_INSN_WAIT
 Wait instruction.
#define A4L_INSN_INTTRIG
 Trigger instruction (to start asynchronous acquisition)
Configuration instruction type

Values to define the type of configuration instruction

#define A4L_INSN_CONFIG_DIO_INPUT   0
#define A4L_INSN_CONFIG_DIO_OUTPUT   1
#define A4L_INSN_CONFIG_DIO_OPENDRAIN   2
#define A4L_INSN_CONFIG_ANALOG_TRIG   16
#define A4L_INSN_CONFIG_ALT_SOURCE   20
#define A4L_INSN_CONFIG_DIGITAL_TRIG   21
#define A4L_INSN_CONFIG_BLOCK_SIZE   22
#define A4L_INSN_CONFIG_TIMER_1   23
#define A4L_INSN_CONFIG_FILTER   24
#define A4L_INSN_CONFIG_CHANGE_NOTIFY   25
#define A4L_INSN_CONFIG_SERIAL_CLOCK   26
#define A4L_INSN_CONFIG_BIDIRECTIONAL_DATA   27
#define A4L_INSN_CONFIG_DIO_QUERY   28
#define A4L_INSN_CONFIG_PWM_OUTPUT   29
#define A4L_INSN_CONFIG_GET_PWM_OUTPUT   30
#define A4L_INSN_CONFIG_ARM   31
#define A4L_INSN_CONFIG_DISARM   32
#define A4L_INSN_CONFIG_GET_COUNTER_STATUS   33
#define A4L_INSN_CONFIG_RESET   34
#define A4L_INSN_CONFIG_GPCT_SINGLE_PULSE_GENERATOR   1001 /* Use CTR as single pulsegenerator */
#define A4L_INSN_CONFIG_GPCT_PULSE_TRAIN_GENERATOR   1002 /* Use CTR as pulsetraingenerator */
#define A4L_INSN_CONFIG_GPCT_QUADRATURE_ENCODER   1003 /* Use the counter as encoder */
#define A4L_INSN_CONFIG_SET_GATE_SRC   2001 /* Set gate source */
#define A4L_INSN_CONFIG_GET_GATE_SRC   2002 /* Get gate source */
#define A4L_INSN_CONFIG_SET_CLOCK_SRC   2003 /* Set master clock source */
#define A4L_INSN_CONFIG_GET_CLOCK_SRC   2004 /* Get master clock source */
#define A4L_INSN_CONFIG_SET_OTHER_SRC   2005 /* Set other source */
#define A4L_INSN_CONFIG_SET_COUNTER_MODE   4097
#define A4L_INSN_CONFIG_SET_ROUTING   4099
#define A4L_INSN_CONFIG_GET_ROUTING   4109
Counter status bits

Status bits for INSN_CONFIG_GET_COUNTER_STATUS

#define A4L_COUNTER_ARMED   0x1
#define A4L_COUNTER_COUNTING   0x2
#define A4L_COUNTER_TERMINAL_COUNT   0x4
IO direction

Values to define the IO polarity

#define A4L_INPUT   0
#define A4L_OUTPUT   1
#define A4L_OPENDRAIN   2
Events types

Values to define the Analogy events. They might used to send some specific events through the instruction interface.

#define A4L_EV_START   0x00040000
#define A4L_EV_SCAN_BEGIN   0x00080000
#define A4L_EV_CONVERT   0x00100000
#define A4L_EV_SCAN_END   0x00200000
#define A4L_EV_STOP   0x00400000

Detailed Description

Analogy for Linux, instruction related features.

Note
Copyright (C) 1997-2000 David A. Schleef ds@sc.nosp@m.hlee.nosp@m.f.org
Copyright (C) 2008 Alexis Berlemont alexi.nosp@m.s.be.nosp@m.rlemo.nosp@m.nt@f.nosp@m.ree.f.nosp@m.r

Xenomai is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Xenomai is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Xenomai; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.