UL_DEVICE

Datenelemente

activetechnology Zeichenfolge (siehe Anmerkung)
area UL_AREA
Beschreibung Zeichenfolge
headline Zeichenfolge
Bibliothek Zeichenfolge
libraryurn Zeichenfolge (siehe Anmerkung)
libraryversion Ganzzahl (siehe Anmerkung)
Name Zeichenfolge (DEVICE_NAME_LENGTH)
Grundriss UL_FOOTPRINT (neu ab EAGLE 9.1, siehe Anmerkung)
Präfix Zeichenfolge (DEVICE_PREFIX_LENGTH)
technologies Zeichenfolge (siehe Anmerkung)
value Zeichenfolge (Ein oder Aus)

Loop-Members

attributes() UL_ATTRIBUTE (siehe Anmerkung)
gates() UL_GATE
packages3d() UL_PACKAGE3D

Siehe auch UL_DEVICESET, UL_LIBRARY, UL_PART.

Konstanten

DEVICE_NAME_LENGTH Max. empfohlene Länge eines Device-Namens (nur in formatierter Ausgabe verwendet)
DEVICE_PREFIX_LENGTH Max. empfohlene Länge eines Device-Präfixes (nur in formatierter Ausgabe verwendet)

Alle Elemente von UL_DEVICE mit Ausnahme von name und technologies geben dieselben Werte zurück wie die entsprechenden Elemente des UL_DEVICESET-Objekts, in dem UL_DEVICE definiert wurde. Das name-Element gibt unter Verwendung des Befehls PACKAGE den Namen der Package-Variante zurück, für die dieses Device erstellt wurde. Beachten Sie bei Verwendung des description-Texts, dass dieser möglicherweise Zeilenumbruchzeichen ('\n') enthält.

Anmerkungen

Der vom activetechnology-Element zurückgegebene Wert hängt vom Kontext ab, in dem es aufgerufen wird:

Das Datenelement footprint gibt den Footprint zurück, der dem Device mithilfe eines Befehls PACKAGE zugewiesen wurde. Es kann als boolesche Funktion verwendet werden, um zu prüfen, ob ein Footprint einem Device zugewiesen wurde (siehe Beispiel unten). (Beachten Sie, dass das footprint-Datenelement neu in EAGLE 9.1 ist. Für Abwärtskompatibilität mit früheren EAGLE-Versionen wird package ebenfalls unterstützt.)

Der vom technologies-Element zurückgegebene Wert hängt vom Kontext ab, in dem es aufgerufen wird:

Das attributes()-Loop-Member verwendet einen zusätzlichen Parameter, der angibt, für welche Technologie die Attribute übergeben werden sollen (siehe zweites Beispiel unten).

libraryurn und libraryversion sind nur dann anwendbar, wenn dieses UL_DEVICE-Objekt aus einer verwalteten Bibliothek stammt. Wenn nicht, ist libraryurn die leere Zeichenfolge und libraryversion der Wert -1.

Beispiele

library(L) {
  L.devicesets(S) {
    S.devices(D) {
      if (D.footprint)
         printf("Device: %s, Footprint: %s\n", D.name, D.footprint.name);
      D.gates(G) {
        printf("\t%s\n", G.name);
        }
      }
    }
  }


library(L) {
  L.devicesets(DS) {
    DS.devices(D) {
      string t[];
      int n = strsplit(t, D.technologies, ' ');
      for (int i = 0; i < n; i++) {
          D.attributes(A, t[i]) {
            printf("%s = %s\n", A.name, A.value);
            }
          }
      }
    }
  }