Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/comedi/drivers/ni_routing/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 3 kB image not shown  

Quelle  ni_route_values.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0+ */
/*
 *  comedi/drivers/ni_routing/ni_route_values.h
 *  Route information for NI boards.
 *
 *  COMEDI - Linux Control and Measurement Device Interface
 *  Copyright (C) 2016 Spencer E. Olson <olsonse@umich.edu>
 *
 *  This program 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.
 *
 *  This program 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.
 */


#ifndef _COMEDI_DRIVERS_NI_ROUTINT_NI_ROUTE_VALUES_H
#define _COMEDI_DRIVERS_NI_ROUTINT_NI_ROUTE_VALUES_H

#include <linux/comedi.h>
#include <linux/types.h>

/*
 * This file includes the tables that are a list of all the values of various
 * signals routes available on NI hardware.  In many cases, one does not
 * explicitly make these routes, rather one might indicate that something is
 * used as the source of one particular trigger or another (using
 * *_src=TRIG_EXT).
 *
 * This file is meant to be included by comedi/drivers/ni_routes.c
 */


#define B(x) ((x) - NI_NAMES_BASE)

/** Marks a register value as valid, implemented, and tested. */
#define V(x) (((x) & 0x7f) | 0x80)

#ifndef NI_ROUTE_VALUE_EXTERNAL_CONVERSION
 /** Marks a register value as implemented but needing testing. */
 #define I(x) V(x)
 /** Marks a register value as not implemented. */
 #define U(x) 0x0

 typedef u8 register_type;
#else
 /** Marks a register value as implemented but needing testing. */
 #define I(x) (((x) & 0x7f) | 0x100)
 /** Marks a register value as not implemented. */
 #define U(x) (((x) & 0x7f) | 0x200)

 /** Tests whether a register is marked as valid/implemented/tested */
 #define MARKED_V(x) (((x) & 0x80) != 0)
 /** Tests whether a register is implemented but not tested */
 #define MARKED_I(x) (((x) & 0x100) != 0)
 /** Tests whether a register is not implemented */
 #define MARKED_U(x) (((x) & 0x200) != 0)

 /* need more space to store extra marks */
 typedef u16 register_type;
#endif

/* Mask out the marking bit(s). */
#define UNMARK(x) ((x) & 0x7f)

/*
 * Gi_SRC(x,1) implements Gi_Src_SubSelect = 1
 *
 * This appears to only really be a valid MUX for m-series devices.
 */

#define Gi_SRC(val, subsel) ((val) | ((subsel) << 6))

/**
 * struct family_route_values - Register values for all routes for a particular
 * family.
 * @family: lower-case string representation of a specific series or family of
 *     devices from National Instruments where each member of this family
 *     shares the same register values for the various signal MUXes.  It
 *     should be noted that not all devices of any family have access to
 *     all routes defined.
 * @register_values: Table of all register values for various signal MUXes on
 *     National Instruments devices.  The first index of this table is the
 *     signal destination (i.e. identification of the signal MUX).  The
 *     second index of this table is the signal source (i.e. input of the
 *     signal MUX).
 */

struct family_route_values {
 const char *family;
 const register_type register_values[NI_NUM_NAMES][NI_NUM_NAMES];

};

extern const struct family_route_values *const ni_all_route_values[];

#endif /* _COMEDI_DRIVERS_NI_ROUTINT_NI_ROUTE_VALUES_H */

Messung V0.5
C=90 H=97 G=93

¤ Dauer der Verarbeitung: 0.0 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.