Registerkommunikation KL6051

Registerzugriff über den Prozessdatenaustausch

  • Bit 7=1: Registermodus
    Wenn Bit 7 des Control-Bytes gesetzt wird, werden die ersten zwei Byte der Nutzdaten nicht zum Prozessdatenaustausch verwendet, sondern in den Registersatz der Klemme geschrieben oder daraus ausgelesen.
  • Bit 6=0: lesen, Bit 6=1: schreiben
    In Bit 6 des Control-Bytes legen Sie fest, ob ein Register ausgelesen oder beschrieben werden soll.
    • Bit 6=0: Ein Register wird ausgelesen, ohne es zu verändern. Der Wert kann dem Eingangs-Prozessabbild entnommen werden.
    • Bit 6=1: Die Nutzdaten werden in ein Register geschrieben. Sobald das Status-Byte im Eingangs-Prozessabbild eine Quittung geliefert hat, ist der Vorgang abgeschlossen (siehe Bsp.).
  • Bit 0 bis 5: Adresse
    In die Bits 0 bis 5 des Control-Bytes wird die Adresse des anzusprechenden Registers eingetragen

Control-Byte im Register-Modus (REG=1)

MSB

REG=1

W/R

A5

A4

A3

A2

A1

A0

 

REG = 0bin: Prozessdatenaustausch
REG = 1bin: Zugriff auf Registerstruktur

W/R = 0bin: Register lesen
W/R = 1bin: Register schreiben

A5..A0 = Registeradresse
Mit Adressen A5...A0 sind insgesamt 64 Register adressierbar.

Beispiel Registerkommunikation

Registerkommunikation KL6051 1:
Register-Modus Control Byte

Das Control- bzw. Status-Byte belegt die niedrigste Adresse eines logischen Kanals. Die entsprechenden Registerwerte befinden sich in den folgenden 2-Datenbytes. (Ausnahme ist der BK2000: hier wird nach dem Control- bzw. Status-Byte ein nicht genutztes Daten-Byte eingeschoben, und somit der Registerwert auf eine Word-Grenze gelegt).

Beispiel 1

Lesen des Registers 8 im BK2000 mit einer KL6051 und der Endklemme:

Werden die folgenden Bytes von der Steuerung zur Klemme übertragen,

Byte

Byte0

Byte1

Byte2

Byte3

Name

Control

Nicht benutzt

Daten aus, high byte

Daten aus, low byte

Wert

0x88

0xXX

0xXX

0xXX

so liefert die Klemme die folgende Typ-Bezeichnung zurück (0x17A3 entspricht dem unsigned Integer 6051).

Byte

Byte0

Byte1

Byte2

Byte3

Name

Status

Nicht benutzt

Daten ein, high byte

Daten ein, low byte

Wert

0x88

0x00

0x17

0xA3

Beispiel 2

Schreiben des Registers 31 im BK2000 mit einer intelligenten Klemme und der Endklemme:

Werden die folgenden Bytes (Anwender Codeword) von der Steuerung zur Klemme übertragen,

Byte

Byte0

Byte1

Byte2

Byte3

Name

Control

Nicht benutzt

Daten aus, high byte

Daten aus, low byte

Wert

0xDF

0xXX

0x12

0x35

so wird das Anwender-Codeword gesetzt und die Klemme liefert als Quittung die Registeradresse mit dem Bit 7 für Registerzugriff zurück.

Byte

Byte0

Byte1

Byte2

Daten3

Name

Status

Nicht benutzt

Daten ein, high byte

Daten ein, low byte

Wert

0x9F

0x00

0x00

0x00