WriteMiFareData

async function WriteMiFareData(ctx: any, startBlockAddress: number, numberOfBlocks: number, dataToWrite: string | Uint8Array, usbConfig: any): {serialNumber: string; payload: string}

Die asynchrone Funktion WriteMiFareData schreibt Daten auf eine MiFare Classic Standard-Karte über die mit dem Browser verbundene serielle Schnittstelle. Die Daten werden über einen Speicherbereich gespeichert, der mit der Adresse und der Anzahl der zu schreibenden Blöcke vorgegeben wird. Ein Block entspricht hierbei 16 Byte, die Adresse gibt den Sektor an, in dem die Daten gespeichert werden.

WriteMiFareData 1:

Browserkompatibilität

Die Funktion ist nur mit Google Chrome und Microsoft Edge kompatibel.

Parameter

Name

Typ

Beschreibung

ctx

any, Context

Asynchrones Context Objekt

startBlockAddress

number

Sektor, in dem sich der Block mit dem zu lesenden Datensatz befindet.

numberOfBlocks

number

Anzahl der zu lesenden Blöcke.

dataToWrite

string

Datensatz, der auf der Karte gespeichert werden soll.

usbConfig

RFIDConfig

Konfigurationsdaten der verbundenen seriellen Schnittstelle.

Rückgabewert

Typ

Beschreibung

object

{serialNumber: string; payload; string}

Beispiel:
Der Datensatz (dataToWrite = „Loremipsumdolorsitametconsectetu“) der Größe 32 Byte soll auf Sektor 2 geschrieben werden. Aus folgendem Bild ergeben sich die Parameter „startBlockAddress = 2“ und „numberOfBlocks = 2“. Der USB-Port wurde bereits mit der Funktion ConnectToComPort verbunden und die Hersteller-ID (4292) und Produkt-ID (60000) über „GetConnectedComPortInfo“ ausgelesen. Die Baudrate muss aus dem Datenblatt der seriellen Schnittstelle ermittelt werden – in diesem Beispiel 9600. Der keyType wird durch die benutzte MiFare Classic-Karte definiert (hier: ‚A‘ - der Authentifizierungsschlüssel aus der Applikation (als Standardwert wird hier 281474976710655.0 gesetzt, was dem hexadezimalen Wert 0xFFFF FFFF FFFF entspricht).

WriteMiFareData 2:

    const dataToWrite = ‘Loremipsumdolorsitametconsectetu’;
    const writeMiFare = TcHmi.Functions.getFunction('TcHmi.Functions.Plastic.WriteMiFareData');

    const data = await readMiFare(
      ctx,
      2,
      2,
      dataToWrite,
      {
          vendorId: 4292,
          productId: 60000,
          baudrate: 9600,
          keyType: ‘A’,
          authenticationKey = 281474976710655.0
      }
    );

    console.log(data);

NuGet Paket: Beckhoff.TwinCAT.HMI.Plastic.RFID

Verfügbar: seit Version 12.14.0

Verwendung: TC3 Plastic Application HMI Projekte