Kommando-Objekt

Index 2000 ASI Command

Mit dem Index 2000 können Sie Kommandos zu den AS-i Slaves senden. Dies ist sowohl in der Offline-Phase (keine anderen Kommandos auf dem AS-i Bus) als auch in der Management-Phase möglich. In der Managementphase können Sie aber nur nicht aktivierte AS-i Slaves ansprechen.

Index (hex)

Name

Bedeutung

Datentyp

Flags

Default

2000:0

ASI Command

Max. Subindex

UINT8

RO

0x03 (3dez)

2000:01

Request

Slave Adresse (siehe folgende Tabelle)

OCTET-STRING[4]

RW

{0}

 

Bit

Wert

Beschreibung

0 - 4

0 - 255

Kommando Sequenz Nummer
(sollte inkrementiert werden, damit das Kommando gesendet wird)

8 - 15

1

reserviert

2

reserviert

3

reserviert

4

AS-i Kommando Parameter schreiben

5

reserviert

6

reserviert

7

AS-i Kommando Adressieraufruf
Wenn in Bit 16 bis 23 eine Adresse ungleich 0 angegeben wird, wird zuerst das AS-i Kommando "Betriebsadresse löschen" aufgerufen, da die Adresse nur eingestellt werden kann, wenn sie vorher auf 0 war.

8

reserviert

12

AS-i Kommando ExtendedID-Code ändern
(Slave muss sich an Adresse 0 befinden)

16 - 23

0 - 63

Adresse des AS-i Slaves, an den das Kommando gesendet werden soll (32 ist nicht erlaubt)

24 - 31

0 - 31

Daten des AS-i Kommandos:


• bei AS-i Kommando Parameter schreiben: Parameterdaten
• bei AS-i Kommando Adressieraufruf: neue Adresse
• bei AS-i Kommando ExtendedID-Code ändern neuer ID Code

Index 2000 ASI Command

Index (hex)

Name

Bedeutung

Datentyp

Flags

Default

2000:02

Status

(siehe folgende Tabelle)

UINT8

RO

0x00 (0dez)

Bit

Wert

Beschreibung

0 - 7

0

ASI_COMMAND_READY

(Kommandoobjekt betriebsbereit, Index 0x2000:01)

1

ASI_COMMAND_BUSY
(Kommandoobjekt nicht betriebsbereit, Index 0x2000:01)

2 - 255

reserviert

Index 2000 ASI Command

Index (hex)

Name

Bedeutung

Datentyp

Flags

Default

2000:03

Response

(siehe folgende Tabelle)
Für Quittung zum AS-i Kommando (AS-i Kommandowert Bit 4 gesetzt): Parameter schreiben
Bit 31 bis 24 geben die im Aufruf des AS-i Kommandos übergebenen Daten (Bit 31 bis 24 des AS-i Kommandos) zurück.

Für Quittung zum AS-i Kommando (AS-i Kommandowert Bit 7 gesetzt): Adressieraufruf
Falls das Error-Bit (Bit 15) nicht gesetzt ist, enthalten Bit 31 bis 24 den Wert 00hex.
Falls das Error-Bit (Bit 15) gesetzt ist, enthalten Bit 31 bis 24 einen Fehler-Code. (siehe folgende Tabelle)

OCTET-STRING[4]

RW

{0}

 

Bit

Beschreibung

0 - 7

Kommando Sequenz Nummer aus dem Request

8 - 14

Entsprechen den Bits 8 bis 15 des Kommando-Aufrufs.

15

Error-Bit:
Falls Bit 15 gesetzt ist, ist bei der Ausführung des Kommandos ein Fehler aufgetaucht und in Bit 31 bis 24 wird ein Fehler-Code ausgegeben!

16 - 23

Adresse des AS-i Slaves, an den das Kommando gesendet wurde.

Bit

Wert

Beschreibung

24 - 31

0x00

Die Adressänderung wurde erfolgreich durchgeführt.

0x11

Es ist kein Slave mit der als alte Adresse angegebenen Adresse vorhanden.

0x22

Die Adresse 0 wird zurzeit von einem anderen Slave belegt. Zum Ändern der Adresse eines AS-i Slaves, muss die EL6201 diesem zuerst die Adresse 0 zuweisen, um ihn danach von dort aus neu zu adressieren.

0x36

Es ist bereits ein Slave mit der als neue Adresse angegebenen Adresse vorhanden

0x47

Nach dem Löschen der alten Adresse ist kein Slave mit der Adresse 0 vorhanden.

0x58

Nach dem Löschen der alten Adresse kommt beim Lesen des Extended ID-Code 1 von Slave 0 ein Fehler. Bei A/B-Slaves wird zur Adressänderung auch der Extended ID-Code 1 benötigt.

0x69

Nach dem Schreiben des Extended ID-Code 1 ist kein Slave mit Adresse 0 vorhanden.

0x6B

Nach dem Schreiben der neuen Adresse ist der Slave mit der neuen Adresse beim Lesen des ID-Codes nicht vorhanden.

0x6C

Nach dem Schreiben der neuen Adresse ist der Slave mit der neuen Adresse beim Lesen des Status nicht vorhanden.

0x7D

Die Adresse konnte nicht dauerhaft (non-volatile) gespeichert werden.

0x7E

Der Extended ID-Code eines A/B-Slaves konnte nicht dauerhaft (non-volatile) gespeichert werden.

0x7F

ID-Code 1 ist falsch bei A/B-Slaves

0x83

Die neue Adresse ist eine B-Adresse.
Wenn auf zwei parallelen Adressen im Adressbereich A und Adressbereich B, z. B. 10A (10) und 10B (42), Slaves betrieben werden sollen, müssen beide Slaves die B-Adressierung unterstützen. In diesem Fall ist auf der parallelen A-Adresse ein Slave vorhanden, der die B-Adressierung nicht unterstützt!

0x84

Die neue Adresse ist eine B-Adresse.
Der mit der alten Adresse ausgewählte Slave ist aber kein A/B-Slave, d.h. er unterstützt die B-Adressen (1B bis 31B) nicht.

0x85

Die neue Adresse ist eine A-Adresse.
Slave ist kein A/B-Slave: zugehöriger B-Slave für neue Adresse ist vorhanden.

Index 2010 ASI String Command

Mit dem Objekt 0x2010 können Sie String Kommandos zu den AS-i Slaves senden (Analog Slaves Profil 7.4 und CTT2 Slaves des M4-Profils). Dies ist nur möglich, wenn der ASI-Master sich bereits in der Datenausstauschphase befindet und das „Data Exchange Active“ Bit im ASI Control gesetzt ist.

Index (hex)

Name

Bit

Wert

Bedeutung

Data type

Flags

Default

2010:0

ASI Command

-

-

Max. Subindex

UINT8

RO

0x03 (3dez)

2010:01

Request

0 - 7

0 - 255

Kommando Sequenz Nummer
(sollte inkrementiert werden, damit das Kommando gesendet wird)

OCTET-STRING[256]

RW

{0}

8 - 15

0, 1, 3 - 9

reserviert

2 (0x2)

Write CTT2 Parameter String

10 (0xA)

Write Parameter String

11 (0xB)

Read Parameter String

12 (0xC)

Read Diagnosis String

13 (0xD)

Read ID String

14 - 255

reserviert

16 - 23

0 - 31

Adresse des AS-i Slaves, an den das Kommando gesendet werden soll

24 - 31

0 - 31

Kommando-Länge (Anzahl der nachfolgenden Command-Bytes/String Daten) – nur CTT2

32 - 63

-

reserviert

64 - 2047

xxxx

String-Daten

2010:02

Status

0 - 7

Bit 0 = 0

ASI_STRING_COMMAND_READY

(Kommandoobjekt betriebsbereit, Index 0x2010:01)

UINT8

RO

0x00 (0dez)

Bit 0 = 1

ASI_STRING_COMMAND_BUSY

(Kommandoobjekt nicht betriebsbereit, Index 0x2010:01)

Bit 1 - 5

Reserviert

Bit 6

Datenaustausch nicht aktiv

Bit 7

PWR fail

2010:03

Response

0 - 7

Kommando Sequenz Nummer aus dem Request

OCTET-STRING[256]

RO

{0}

8 - 14

Entsprechen den Bits 8 bis 15 des Kommando-Aufrufs.

15

Error-Bit:
Falls Bit 15 gesetzt ist, ist bei der Ausführung des Kommandos ein Fehler aufgetaucht und in Bit 31 bis 24 wird ein Fehler-Code ausgegeben!

16 - 23

Adresse des AS-i Slaves, an den das Kommando gesendet wurde.

24 - 31

Falls das Error-Bit (Bit 15) gesetzt ist, enthalten Bit 31 bis 24 einen Fehler-Code.

0x00

Kommando wurde erfolgreich durchgeführt.

0x10

Slave ist kein Analog-Slave

0x20

Slave unterstützt Analog Slave Profil 7.4 nicht

0x40

String Transfer ist bereits aktiv

0x80

Datenaustausch ist nicht aktiv

0x08

Kommando wird nicht unterstützt

32 - 63

-

reserviert

64 - 2047

xxxx

String Daten