FB_BinaryReader - Allgemeine Informationen
Typ |
Funktionsbaustein |
Verfügbar ab |
V1.0.3.0 |
Übernommen aus |
- |
Implementiert |
- |
Versionen: |
Aktuelle Version |
Effizientes Lesen beliebiger Datenstrukturen aus einer Binärdatei.
Der Funktionsbaustein liest die in i_diBufferSize angegebene Anzahl von Bytes aus einer Datei, die zuvor mit FB_BinaryWriter erzeugt wurde, und speichert das Gelesene an der über i_dwBufferAdr angegebenen Adresse im Speicher. An der Position von i_dwBufferAdr muss entsprechend viel Speicher reserviert sein.
Der Lesevorgang startet bei einer positiven Flanke an i_xExecute und hält bei Erkennung eines Fehlers oder nach erfolgreichem Lesen aller Daten an. Während des Lesevorgangs darf kein Parameter (außer i_xExecute) geändert werden. Zudem darf auf den Speicherbereich, auf den i_dwBufferAdr zeigt, nicht schreibend zugegriffen werden.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_xExecute |
BOOL |
FALSE -> TRUE: Baustein wird aktiviert. Der Lesevorgang beginnt. |
i_sFileName |
STRING[80] |
Name der Textdatei, aus der Variablen ausgelesen werden sollen. |
i_diBufferSize |
DINT |
Anzahl der zu lesenden Bytes |
i_dwBufferAdr |
DWORD |
Adresse des Arrays, in dem die Daten gespeichert werden sollen. Es muss entsprechend viel Speicher reserviert sein. |
Ausgang |
Datentyp |
Beschreibung |
---|---|---|
q_xBusy |
BOOL |
TRUE: Der Lesevorgang ist aktiv. |
q_xDone |
BOOL |
Der Lesevorgang ist abgeschlossen |
q_etDiag |
Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose. Ein Wert ungleich ET_Diag.Ok entspricht einer Diagnosemeldung. |
|
q_etDiagExt |
POU-spezifischer, diagnosebezogener Ausgang. q_etDiag = ET_Diag.Ok -> Statusmeldung q_etDiag <> ET_Diag.Ok -> Diagnosemeldung |
q_etDiag |
q_etDiagExt |
Enumerationswert |
Beschreibung |
---|---|---|---|
OK |
128 |
Version |
|
OK |
180 |
Warten auf Ausführung. |
|
FileHandlingInvalid |
104 |
Die Datei ist nicht vorhanden. |
|
FileHandlingInvalid |
106 |
Fehler beim Auslesen aus Datei. |
|
FileHandlingInvalid |
105 |
Es sind zu viele Dateien geöffnet. |
|
UnexpectedProgramBehavior |
1 |
Es ist ein unbeabsichtigter Fehler während der Ausführung aufgetreten. |
Enumerationsname: |
Executing |
Enumerationswert: |
128 |
Beschreibung: |
Version |
Die Daten werden ausgelesen.
Enumerationsname: |
FileNotExisting |
Enumerationswert: |
104 |
Beschreibung: |
Die Datei ist nicht vorhanden. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Die Datei ist nicht vorhanden. |
Kopieren Sie die Datei in das Flash-Laufwerk der Steuerung. |
- |
Auf den Eingang i_sFilename wurde ein nicht existierender Dateiname angewendet. |
Überprüfen Sie den Dateinamen an i_sFilename. |
Enumerationsname: |
FileReadingInvalid |
Enumerationswert: |
106 |
Beschreibung: |
Fehler beim Auslesen aus Datei. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Die Datei ist beschädigt. |
Erstellen Sie die Datei neu. |
Enumerationsname: |
TooManyFilesOpen |
Enumerationswert: |
105 |
Beschreibung: |
Es sind zu viele Dateien geöffnet. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Es sind zu viele Dateien geöffnet. |
Schließen Sie mit SystemInterface.FC_CloseFile nicht mehr benötigte Dateien. |
Enumerationsname: |
UnexpectedFeedback |
Enumerationswert: |
1 |
Beschreibung: |
Es ist ein unbeabsichtigter Fehler während der Ausführung aufgetreten. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Es ist ein Fehler in der internen Abarbeitung aufgetreten. |
Es ist ein Fehler in der internen Abarbeitung aufgetreten. |
Enumerationsname: |
WaitForExecute |
Enumerationswert: |
180 |
Beschreibung: |
Warten auf Ausführung. |
Der Funktionsbaustein ist funktionsbereit. Auf eine positive Flanke von i_xExecute hin werden die Daten ausgelesen.