Cyclone Control Console | Automatisiertes Programmieren

Die Cyclone Control Console ist eine leistungsstarke Befehlszeilenanwendung, mit der ein oder mehrere Cyclones gleichzeitig gesteuert werden können. Programmierimage können hinzugefügt / entfernt, Einstellungen gelesen / eingestellt, Programmiervorgänge gestartet und dynamische Daten programmiert werden. Die Befehlszeilenanwendung zeigt umfassende Statusmeldungen an und gibt auch einen Fehlercode zurück, der Erfolg oder Misserfolg anzeigt. Die Anwendung kann über ein Skript, eine Konsole oder eine andere Anwendung gestartet werden. Es ist eine der drei Hauptkomponenten der Cyclone Control Suite, darunter: die Cyclone Control Console, die Cyclone Control GUI und das Cyclone Control SDK.

Dieser Blog-Beitrag zeigt viele gängige Cyclone-Programmiervorgänge, die mit der Cyclone Control Console-Anwendung problemlos ausgeführt werden können.

 

Das Cyclone-Benutzerhandbuch enthält Informationen zu verschiedenen Befehlszeilenparametern, die auf dem Cyclone verfügbar sind. Die Cyclone Control Console kann bei Verwendung des Befehlszeilenparameters -help auch eine komprimierte Liste der verfügbaren Parameter anzeigen.

 

Auflistung der verfügbaren Befehlszeilenparameter der Cyclone Control Console


Die aktuelle Befehlsliste kann immer mit dem Befehlszeilenparameter -help aus der Konsolenanwendung abgerufen werden. Verfügbare Optionen werden angezeigt:

 

1

 

 

Beispiele für Cycloneverbindungen

 

Auflistung der automatisch erkannten Cyclones


Cyclones können über USB-, Ethernet- und serielle Schnittstellen mit dem PC verbunden werden. Über USB- und Ethernet-Verbindungen verbundene Cyclones werden möglicherweise automatisch erkannt. Bei Ethernet werden nur Cyclones im lokalen Subnetz automatisch erkannt (entfernte Cyclones können von der Konsole aus gesteuert, aber nicht automatisch erkannt werden). Der Name, die IP und die Portnummer des Cyclones werden aufgelistet. Jede dieser Kennungen kann zum Öffnen eines Cyclones verwendet werden. Der Name und die IP-Adresse werden zum Öffnen eines Cyclone empfohlen, da sich die Portnummer abhängig von der Anzahl der angeschlossenen Cyclones ändern kann.

In diesem Beispiel werden drei Cyclones erkannt, wobei jeder Cyclone über USB- und Ethernet-Verbindungen mit dem PC verbunden ist.

 

2

 

Hinweis: Wenn ein Cyclone sowohl über USB als auch über Ethernet angeschlossen ist, wird er zweimal aufgelistet.

 

Öffnen eines Cyclone nach Namen (und Auflisten von Images)


Das Öffnen eines Cyclones mit Namen ist die häufigste Methode zum Festlegen eines Cyclones. Es funktioniert unabhängig davon, ob es über USB oder Ethernet angeschlossen ist. Der ausgewählte Bezeichner wird durch den Befehlszeilenparameter -cyclone = [bezeichner] angegeben, wobei der [Bezeichner] der Name, die IP oder der Port des Cyclones ist. Die meisten Befehlszeilenoperationen (z. B. Programmierung starten) verwenden den Parameter -cyclone, um die zu öffnenden Cyclones anzugeben, und fügen dann andere Parameter hinzu, um anzugeben, welche Funktionen ausgeführt werden sollen. Mehrere Cyclones können in einer durch Kommas getrennten Liste oder mithilfe von Befehlszeilenparametern mit mehreren Cyclones angegeben werden.

In diesem Beispiel haben wir auch einen Befehlszeilenparameter -listimages, der angibt, dass das Dienstprogramm die Liste der Images anzeigen soll, die sich sowohl im internen als auch im externen Speicher des angegebenen Cyclone befinden.

Hier ist ein Beispiel für das Öffnen des Cyclone"Ada" nach Namen und das Auflisten der darin enthaltenen Images.


3

 

Die Programmierimages sind nach Nummern aufgelistet. Jedes Images gibt auch "eSAP" an, wenn das Images verschlüsselt ist, oder "SAP", wenn das Image nicht verschlüsselt ist. Der Speicherort des Image wird auch als "Intern" für Images bezeichnet, die im internen Speicher des Cyclone gespeichert sind, oder "Extern" für Images, die auf einer SD-Speicherkarte im SDHC-Port des Cyclone gespeichert sind (Cyclone FX- oder SDHC-Port-Aktivierungslizenz erforderlich LC Modelle). Schließlich wird die Imagebeschreibung aufgelistet (dies kann vom Dateinamen abweichen).

Hinweis: Der Name eines Cyclone kann über den LCD-Touchscreen oder über eine der Komponenten der Cyclone Control Suite (GUI, Konsole und SDK) festgelegt werden. Sobald der Name festgelegt ist, wird er im nichtflüchtigen Speicher des Cyclone gespeichert und bis zur Änderung gespeichert. Andere Möglichkeiten zum Öffnen eines Cyclone sind die IP-Adresse oder die Portnummer.

 

Öffnen eines Cyclones nach Port (und Auflisten von Images)


Zusätzlich zu Name und IP-Nummer kann ein Cyclone durch den Portnamen angegeben werden. Dies kann nützlich sein, wenn nur ein Cyclone an den USB / Ethernet-Bussen angeschlossen ist oder wenn der Cyclone über einen COM-Anschluss angeschlossen ist. Verwenden Sie zum Öffnen eines an einen bestimmten COM-Port angeschlossenen Cyclones die entsprechende COM-Portnummer (COM1 ... COM8). Verwenden Sie USB1 (USB-Anschlüsse reichen von USB1..USB39), um den ersten erkannten USB-Cyclone zu öffnen. Verwenden Sie zum Öffnen des ersten Ethernet-Cyclone Ethernet1 (Ethernet-Ports reichen von Ethernet1..Ethernet99). Beachten Sie, dass die Cyclone in einer sortierten Reihenfolge aufgelistet sind, um die Portnummer zu bestimmen. Daher können sich die Portnummern mit der Anzahl der erkannten Cyclone ändern. Aus diesem Grund empfehlen wir, den Cyclonenamen oder die IP-Adresse zu verwenden, um die entsprechenden Cyclone anzugeben, wenn mehrere Cyclone gleichzeitig verwendet werden. Bei Verwendung eines einzelnen Cyclone kann die Portnummer jedoch eine einfache Möglichkeit sein, einen an den PC angeschlossenen Cyclone zu öffnen, ohne dessen IP-Adresse oder Namen zu kennen.

Ein Beispiel für das Öffnen des ersten auf dem USB-Bus erkannten Cyclone:

Unten finden Sie ein Beispiel für das Öffnen eines Cyclone anhand seiner IP-Adresse. Der Cyclone kann vom PC aus entfernt angebracht werden. In diesem Fall sollten die IP-Adresse, die Gateway-Adresse und die Netzmaske des Cyclone für das Netzwerk, mit dem er verbunden ist, richtig eingestellt sein. Beispiel für das Öffnen nach IP-Adresse:


4

 

 

Öffnen mehrerer Cyclones (und Auflisten von Images)


Das Öffnen mehrerer Cyclones ist einfach. Übergeben Sie entweder eine durch Kommas getrennte Liste von Cyclonenamen an den Parameter -cyclone = (z. B. -cyclone = ada, colossus, hal9000) oder verwenden Sie mehrere -cyclone-Parameter (z. B. -cyclone = ada -cyclone = colossus -cyclone = hal9000). . Die anderen Operationen in der Befehlszeile werden auf allen geöffneten Cyclones ausgeführt, einschließlich des Programmierstarts, mit Ausnahme der dynamischen Datenprogrammierung (wobei der Cyclone, auf den die dynamischen Daten angewendet werden sollen, als Teil des Parameters angegeben wird). Hier ist ein Beispiel für die Auflistung von Images auf zwei Cyclones:


5

 

 

Beispiele für die Imageverwaltung (Hinzufügen / Entfernen)

Hinzufügen eines Programmierimage zu einem Cyclone


Images können einem Cyclone hinzugefügt werden, indem der Befehlszeilenparameter -addimageinternal = verwendet und der Dateiname des hinzuzufügenden Programmierimage angegeben wird. Es können mehrere Cyclones sowie mehrere Images in derselben Befehlszeile angegeben werden. In diesem Beispiel fügen wir einem einzelnen Cyclone ein einzelnes Image hinzu:


6

Beachten Sie, dass Sie ein verschlüsseltes Programmierabbild (eSAP-Datei) nur dann auf einen Cyclone laden können, wenn sich der diesem verschlüsselten Image zugeordnete ImageKey auf dem Cyclone befindet. Weitere Informationen finden Sie im Abschnitt Verschlüsselte SAP-Images.

 

Entfernen eines Programmierimage aus einem Cyclone


Bestimmte Images können nach Nummer, Beschreibung oder komprimierter Beschreibung aus einem Cyclone entfernt werden. Eine komprimierte Beschreibung ist die Imagebeschreibung, bei der alle Leerzeichen entfernt sind (was die Verwendung von Befehlszeilenparametern erleichtert, wenn die Beschreibung Leerzeichen enthält). Die angegebene Kennung unterscheidet nicht zwischen Groß- und Kleinschreibung. Der HAL9000 Cyclone in diesem Beispiel verfügt derzeit über die folgenden Programmierimages:

 

Image auf Cyclone HAL9000

   Image 1 (SAP-intern): Rotes Image v1.0

   Image 2 (SAP-intern): Grünes Image v1.0

   Image 3 (SAP-intern): Blue Image v1.0

   Image 4 (SAP-intern): Roter Image-Barcode v1.0

   Image 5 (SAP-intern): Green Image Barcode v1.0

   Image 6 (SAP-intern): Blue Image Barcode v1.0

   Image 7 (SAP-intern): Führen Sie Test Application v1.02 aus

   Image 8 (SAP-intern): Grün

 

Im folgenden Beispiel entfernen wir ein Image anhand seiner vollständigen Beschreibung (einschließlich Leerzeichen). Da dieses Beispiel unter Windows ausgeführt wird, umgeben wir einen Parameter mit doppelten Anführungszeichen, um anzuzeigen, dass es sich um einen Parameter handelt, obwohl er Leerzeichen enthält:


7

Im folgenden Beispiel entfernen wir ein Image anhand seiner komprimierten Beschreibung. Dies funktioniert auf allen Betriebssystemen, obwohl die eigentliche Beschreibung Leerzeichen enthält (wir lassen sie in der Befehlszeile weg). Aus diesem Grund empfehlen wir die Verwendung komprimierter Beschreibungen. Beachten Sie, dass in diesem Beispiel keine Anführungszeichen erforderlich sind:


8

 

Im folgenden Beispiel entfernen wir ein Image anhand seiner Nummer:


9

 

Beachten Sie, dass sich beim Löschen von Images die Imagenummern ändern. Wenn 5 Images vorhanden sind und Image 4 gelöscht wird, wird Image 5 zu Image 4.

 

 

Löschen aller Images in einem Cyclone


Es gibt zwei Befehlszeilenparameter, mit denen Sie Gruppen von Images im Cyclone löschen können, damit Sie sie nicht einzeln entfernen müssen:

 

    -eraseallinternalimages: Löscht alle internen Images von offenen Cyclone

    -eraseallexternalimages: Löscht alle externen Images von offenen Cyclone

 

Interne Imageas befinden sich im verschlüsselten internen Speicher des Cyclone, während sich externe Images auf einer verschlüsselten SDCard befinden, die optional an den Cyclone angeschlossen ist. Images können aus mehreren Cyclones gelöscht werden, indem mehr als ein Cyclone in der Befehlszeile angegeben wird. In diesem Beispiel löschen wir alle Images, die sich intern im HAL9000 Cyclone befinden:


10

 

Hinzufügen mehrerer Images zu mehreren Cyclones


Im Folgenden finden Sie ein Beispiel für die Kombination verschiedener Imageverwaltungstechniken. Wir öffnen zwei Cyclones (Agnes und Colossus), löschen alle internen Images und fügen dann jedem Cyclone sechs Programmierimages hinzu, alle mit einem Befehl:


11

 

 

Beispiele für Programmierstarts

Starten eines Programmierabbilds auf einem Cyclone


Images im Cyclone können ausgewählt und gestartet werden, indem entweder die Imagenummer im Cyclone, die Imagebeschreibung oder die komprimierte Version der Bildbeschreibung (mit entfernten Leerzeichen) angegeben werden.

Dieses Beispiel zeigt, wie die Programmierung eines Images gestartet wird, das in seiner komprimierten Beschreibung angegeben ist:


12

 

Dieses Beispiel zeigt, wie Sie die Programmierung eines Images starten, das durch die Imagenummer im Cyclone angegeben wird:


13

 

Beachten Sie, dass die Programmierung für ein verschlüsseltes (eSAP) Image nicht gestartet werden kann, wenn der ImageKey für diese Datei aus dem Cyclone entfernt wurde. Weitere Informationen finden Sie im Abschnitt Verschlüsselte SAP-Images.

Gleichzeitiges Starten desselben Images auf verschiedenen Cyclones, ausgewählt nach Namen
Das gleiche Image kann auf mehreren Cyclones gleichzeitig gestartet werden, indem einfach mehrere Cyclones in der Befehlszeile angegeben werden. Wenn auf jedem Cyclone unterschiedliche Imagesätze vorhanden sind, ist die Verwendung der komprimierten Imagebeschreibungen eine gute Möglichkeit, um sicherzustellen, dass das entsprechende Programmierimage gestartet wird. Wenn das auf jedem Cyclone festgelegte Image identisch ist, stimmt die Imagenummer überein. Daher ist die Imagenummer eine weitere Möglichkeit, dasselbe Image auf mehreren Cyclone zu starten. In diesem Beispiel wird die komprimierte Imagebeschreibung verwendet, um die Programmierung zu starten:


14

 

Starten verschiedener Images gleichzeitig auf verschiedenen Cyclones, ausgewählt nach Nummer

Manchmal befinden sich auf einer Karte mehrere Mikrocontroller, die gleichzeitig programmiert werden müssen. Es ist oft vorteilhaft, mehrere Cyclones zu verwenden, die jeweils gleichzeitig ein anderes Image programmieren. Der Ansatz besteht darin, sicherzustellen, dass jeder Cyclone mit einem anderen Image geladen wird, sodass er in jedem Cyclone dieselbe Nummer hat. Eine einfache Möglichkeit, dies zu tun, besteht darin, alle Images in beiden Cyclones zu löschen und dann jedem Cyclones ein anderes Image hinzuzufügen. In diesem Fall wäre Image 1 in jedem Cyclone unterschiedlich, könnte aber gleichzeitig gestartet werden:


15

 

Programmieren dynamischer Daten nach der Imageprogrammierung

Zusätzlich zur Programmierung der als Teil eines Programmierimage angegebenen Daten können in jedes Zielgerät zusätzliche Daten programmiert werden. Diese Daten können bei jedem Start eines Programmierabbilds angegeben und als solche Ziel für Ziel angepasst werden. Dynamische Daten haben viele Anwendungsfälle: Kundengesteuerte Serialisierung, Konfiguration, Nachverfolgung, Datumscodierung usw. In der Befehlszeile können mehrere Sätze dynamischer Daten angegeben werden. Daten können als Array von Bytes oder als nullterminierte Zeichenfolge bereitgestellt werden.

 

Als Teil des dynamischen Datenprogrammierungsparameters muss die Cyclone-Handle-Nummer angegeben werden. Dadurch können verschiedene dynamische Daten in Ziele programmiert werden, die mit jedem geöffneten Cyclone verbunden sind. Wenn nur ein Cyclone gestartet wird, wird der Wert 1 verwendet. Wenn drei Cyclones in der Befehlszeile angegeben würden, würden sie in der Befehlszeile in der Reihenfolge von links nach rechts als 1, 2 und 3 nummeriert.

 

Die Syntax zum Programmieren dynamischer Daten als Array von Bytes lautet:

 

   -putdynamicdata = [Cyclonenummer], [Adresse], [Daten]

 

Im folgenden Beispiel programmieren wir ein benutzergeneriertes 4-Byte-Seriennummernarray in das Ziel, nachdem die Hauptimageprogrammierung abgeschlossen ist:


16

 

Hinweis: Beim Programmieren dynamischer Daten muss die Imageprogrammierung zuerst in dieser Befehlszeile gestartet werden.

 

Die Syntax zum Programmieren dynamischer Daten als nullterminierte Zeichenfolge lautet:

 

    -putdynamicstring = [Cyclonenummer], [Adresse], [Zeichenfolge]

 

Im folgenden Beispiel programmieren wir eine benutzergenerierte IP-Adresszeichenfolge in das Ziel, nachdem die Hauptimageprogrammierung abgeschlossen ist:


17

 

Hinweis: Die Imageprogrammierung muss als Teil der Befehlszeile gestartet werden, wenn dynamische Daten programmiert werden. Die angegebenen Beispiele beziehen sich auf vom Kunden generierte Seriennummern und IP-Zeichenfolgen. Der Cyclone unterstützt auch die automatische Zählung von Seriennummern, die als Teil des Image gespeichert werden sollen.

 

Programmieren verschiedener dynamischer Daten in mehrere Ziele aus verschiedenen Cyclone


Im folgenden Beispiel programmieren wir sowohl eine eindeutige benutzergenerierte Seriennummer als auch eine eindeutige benutzergenerierte IP-Adresszeichenfolge in zwei verschiedene Ziele, die mit zwei verschiedenen Cyclones verbunden sind:

 


18

 

Hinweis: Die Imageprogrammierung muss als Teil der Befehlszeile gestartet werden, wenn dynamische Daten programmiert werden. Die angegebenen Beispiele beziehen sich auf vom Kunden generierte Seriennummern und IP-Zeichenfolgen. Der Cyclone unterstützt auch das automatische Zählen von Seriennummern, die als Teil des Image gespeichert sind.

 

Cyclone- / Imageeigenschaften lesen / schreiben


Es gibt viele Eigenschaften im Cyclone und seinen residenten Image, die zum Anzeigen und in einigen Fällen zum Ändern nützlich sein können.

 

Abrufen einer Liste von Eigenschaftskategorien aus dem Cyclone


Eigenschaften werden im Cyclone in verschiedenen Kategorien gespeichert, einschließlich Systemeinstellungen, Netzwerkeinstellungen, Image spezifischen Einstellungen und anderen. Eine Liste der verfügbaren Kategorien kann mithilfe des Befehlszeilenparameters -showproperties = angezeigt werden, ohne dass dem Gleichheitszeichen etwas folgt.


19

 

Lesen der Liste der Eigenschaftsnamen / -werte in einer Kategorie


Im folgenden Beispiel zeigen wir die Eigenschaften in der Kategorie „Cycloneeigenschaften“ an. Dies umfasst den Namen des Cyclones sowie die Anzahl der Images im Cyclone. Die Syntax des Befehlszeilenparameters -showproperties lautet:

 

    -showproperties = [Kategorie], [Imagename oder #]

 

Dadurch werden alle Eigenschaften in der Kategorie angezeigt. Lassen Sie nach dem = für die gesamte Kategorieliste leer. In diesem Fall können wir den Imagenamen oder die Imagenummer auf 0 setzen oder leer lassen, da wir nicht auf die Eigenschaften eines Image zugreifen.


20

 

Lesen von Imageeigenschaften wie nächste Seriennummer und CRC


Die Eigenschaften der im Cyclone gespeicherten Images können gelesen werden, indem Sie auf die Kategorie „Imageeigenschaften“ zugreifen und den Imagenamen oder die Imagenummer angeben. Die Syntax des Befehlszeilenparameters -showproperties lautet:

 

    -showproperties = [Kategorie], [Imagename oder #]

 

Dadurch werden alle Eigenschaften in der Kategorie angezeigt. Lassen Sie nach dem = für die gesamte Kategorieliste leer. In diesem Fall lesen wir die Eigenschaften des Image"green_serial". Beachten Sie, dass Informationen wie die CRC und die Seriennummer des Image angezeigt werden:


21

 

Das Image hat eine einzelne Seriennummer, die derzeit "PE-00b" lautet. Beim nächsten Start der Programmierung wird das Ziel mit der Seriennummer „PE-00b“ programmiert. Da die serielle Datei um 2 erhöht wird, erhöht der Cyclone die Seriennummer automatisch auf „PE-00d“. Diese Seriennummer ist ein Beispiel für die Fähigkeit des Cyclone, die Seriennummer automatisch zu zählen. PEmicro verfügt über ein Dienstprogramm zur Definition von Seriennummern, mit dem der Benutzer automatisch zählende Seriennummern erstellen kann.

 

Zur Demonstration starten wir die Programmierung und zeigen die Seriennummer in einem einzigen Konsolenbefehl an. Im Rahmen des Programmiervorgangs wird „PE-00b“ in das Ziel programmiert und die für das Image gespeicherte Seriennummer in „PE-00d“ geändert:


22

 

Festlegen des Namens eines Cyclone durch Schreiben der Eigenschaft "Cyclonenname"


Einige Einstellungen im Cyclone sind beschreibbar, z. B. die Netzwerkeinstellungen und der Name des Cyclone. In diesem Beispiel setzen wir den Namen des Cyclone. Das Festlegen des Namens eines Cyclone kann nützlich sein, da wir mit Name einen bestimmten Cyclone für andere Befehle angeben können. Dies kann so einfach sein, dass Sie die Funktion des Geräts "JuliesCycloneDoNotTouch" deklarieren oder einen Namen auswählen, der einen Speicherort impliziert, z. B. "ProductXFixtureSlot3".

 

Beginnen wir mit der Auflistung automatisch erkannter Cyclone:


23

Der Cyclone namens Ada ist sowohl auf dem USB- als auch auf dem Ethernet-Bus des PCs aufgeführt. Fragen wir die Kategorie "Cycloneeigenschaften" des Cyclones mit dem Namen Ada ab:


24

 

Wie erwartet ist die Eigenschaft "Cyclonename" Ada. Wir wissen das, weil wir uns so damit verbunden haben. Nehmen wir an, wir wollten stattdessen den Namen in Skynet ändern. Wir würden den Befehl -setproperty = verwenden, um den Wert zu ändern. Die Syntax des Befehls lautet:

 

    -setproperty = [Kategorie], [Imagename oder #], [Eigenschaft], [Wert]

 

Da der Name nicht zur Kategorie "Imageeigenschaften" gehört, können wir die Imagenummer auf 0 setzen. Hier ändern wir den Namen von Colossus in Skynet:


25

 

Wenn wir nun die auf den USB- und Ethernet-Bussen gefundenen Cyclones abfragen, können wir feststellen, dass der Cyclone-Name von Ada in Skynet geändert wurde:


26

 

Verwalten verschlüsselter SAP-Images


Die Cyclone Control Console bietet Befehle, mit denen verschlüsselte (eSAP) Programmierabbilder verwaltet werden können. Mit diesen Befehlen können Sie ImageKeys auflisten, hinzufügen und löschen. Hierbei handelt es sich um Dateien, die zum Verschlüsseln eines Programmierabbilds verwendet werden. Ein eSAP-Image kann nicht auf einen Cyclone geladen oder nach dem Laden zur Programmierung gestartet werden, es sei denn, der ImageKey, mit dem das eSAP-Image verschlüsselt wurde, befindet sich auf dem Cyclone.

Ermitteln des Verschlüsselungsstatus eines Programmierabbilds

Der Befehl -listimages wird verwendet, um die Programmierabbilder auf einem bestimmten Cyclone aufzulisten. Diese Imageliste zeigt an, ob jedes Image verschlüsselt ist oder nicht. Als "eSAP" aufgeführte Images werden verschlüsselt, als "SAP" aufgeführte Images nicht. Die ersten beiden im folgenden Bildschirm aufgelisteten Programmierabbilder sind verschlüsselt.


27

Spezifische Informationen zum Verschlüsselungsstatus eines einzelnen Programmierabbilds können mit dem Befehl -showproperties = imageproperties für dieses bestimmte Abbild angezeigt werden. Für die Imageverschlüsselung sind drei Werte relevant:

1) Die Eigenschaft imageEncryptionStatus zeigt den Verschlüsselungsstatus eines Programmierabbilds als einen von drei Werten an:

Verschlüsselt. Bereit zur Ausführung.
Verschlüsselt. Gesperrt - Kein Schlüssel gefunden.
Nicht verschlüsselt. Bereit zur Ausführung
2) Die Eigenschaft imageKeyDescription zeigt den Namen des ImageKey an, falls vorhanden, der dem Programmierimage zugeordnet ist.

3) Die imageKeyID-Eigenschaft zeigt die eindeutige ID des ImageKey an, falls vorhanden, der dem Programmierimage zugeordnet ist.

Der folgende Bildschirm zeigt alle Imagemerkmale für das Image "K64 Encrypted BB 16K":


28

Diese Eigenschaften weisen darauf hin, dass es sich um ein verschlüsseltes Image handelt, der ImageKey jedoch fehlt. Das Image ist daher gesperrt und kann nicht programmiert werden. Der ImageKey, der zum Entsperren dieses Images benötigt wird, damit es programmiert werden kann, heißt "Kevin BB" und seine ID # lautet "pei-6D479B42-51D84364-5CA47697".

Verwenden von ImageKey-Befehlen
Im Folgenden wird anhand des obigen Abbilds veranschaulicht, wie mithilfe der ImageKey-Befehle der Cyclone Control Console ermittelt wird, welcher ImageKey fehlt, dieser ImageKey auf den Cyclone geladen wird, damit das Images programmiert werden kann, und anschließend der ImageKey erneut gelöscht wird sperrt das verschlüsselte Images .

Die Konsole bietet Befehle zum Auflisten, Hinzufügen und Entfernen von ImageKeys:

-listEncryptionKeys
-addEncryptionKey = [Dateipfad]
-deleteEncryptionKey = [Objekt-ID oder Anzeigeindex]


Liste ImageKeys

Zunächst zeigt der Befehl -listEncryptionKeys, dass sich auf dem Cyclone ein ImageKey befindet (dessen Anzeigeindex 1 ist), aber es ist nicht der Schlüssel mit dem Namen "Kevin BB", den wir zum Entsperren des Images benötigen:


29

Fügen Sie einen ImageKey hinzu

Der Befehl -addEncryptionKey wird dann verwendet, um den fehlenden ImageKey zum Cyclone hinzuzufügen. Der Dateipfad für den ImageKey ist erforderlich:


30

Der Befehl -listEncryptionKeys zeigt jetzt an, dass der erforderliche ImageKey am Anzeigeindex 2 hinzugefügt wurde:


31

Ein weiterer Blick auf die Imageeigenschaften zeigt, dass das verschlüsselte Image jetzt programmierbar ist:


32

 

Löschen Sie einen ImageKey

Der Benutzer möchte diesen ImageKey möglicherweise später entfernen, damit die eSAP-Datei "K64 Encrypted BB 16K" nicht programmiert werden kann. Dies erfolgt mithilfe des Befehls -deleteEncryptionKey mit entweder der ID des ImageKey oder (wie im folgenden Beispiel) dem Anzeigeindex des ImageKey:


33

Das erneute Auflisten der ImageKeys mit dem Befehl -listEncryptionKeys zeigt, dass der ImageKey entfernt wurde.


34

 

Weitere Informationen zur Cyclone-Imageverschlüsselung finden Sie im Blogbeitrag "Cyclone fügt RSA / AES-Verschlüsselung für die Produktionsprogrammierung hinzu".

 

Zusätzliche Hinweise / Funktionen


Das Wiederherstellen von Erfolg / Fehler resultiert aus Python / Bash / Batch / etc.


Die Cyclone Control Console zeigt nicht nur Erfolgs- und Fehlerinformationen als in die Konsole geschriebene Zeichenfolgen an, sondern gibt auch einen entsprechenden Fehlercode an das Betriebssystem auf dem PC zurück. Dieser Fehlercode kann in einer Anwendung oder in verschiedenen Skriptsprachen getestet werden. Ein Null-Fehlercode zeigt einen erfolgreichen Betrieb an und ein Nicht-Null-Fehlercode zeigt einen Fehler an.

 

Hier ist ein Beispiel für eine Windows-Batchdatei, mit der Erfolgs- / Fehlerinformationen erfolgreich von der Cyclone Control Console wiederhergestellt werden können:

 

cyclonecontrolconsole -cyclone = Agnes -launchimage = green_serial

Wenn ERRORLEVEL 1 nicht mehr aufgetreten ist

echo Erfolgreich programmiert!

fertig

:Ein Fehler ist aufgetreten

Echo-Programmierung fehlgeschlagen !!!!!

:getan

 

Hier ist ein Beispiel für ein Bash-Shell-Skript, mit dem Erfolgs- / Fehlerinformationen erfolgreich von der Cyclone Control Console wiederhergestellt werden können:

 

#! / bin / bash

cyclonecontrolconsole -cyclone = Agnes -launchimage = green_serial

errorReturn = $?

if [$ errorReturn == 0]; dann

  Echo 'Erfolgreich programmiert!'

sonst

  echo 'Programmierung fehlgeschlagen !!!!! mit dem Fehlercode '$ errorReturn

  Ausfahrt 1

fi

 

Hier ist ein Beispiel für ein Python-Skript, mit dem Erfolgs- / Fehlerinformationen erfolgreich von der Cyclone Control Console wiederhergestellt werden können:

 

Unterprozess importieren

sys importieren

 

P = subprocess.run ("cyclonecontrolconsole -cyclone = Agnes -launchimage = green_serial", shell = True, stdout = subprocess.PIPE, stderr = subprocess.PIPE)

print ("STDOUT drucken:")

print (P.stdout.decode ())

wenn P.returncode == 0:

print ("Erfolgreich programmiert!")

sonst:

print ("Programmierung fehlgeschlagen !!! mit Fehlercode" + str (P.returncode))

sys.exit (1)

 

Reihenfolge der Ausführung von Befehlszeilenparametern


Befehlszeilenparameter werden alle ausgewertet, bevor sie ausgeführt werden. Wenn ein ungültiger Parameter vorliegt, generiert die Cyclone Control Console einen Fehler und zeigt an, welcher Parameter nicht verstanden wird. Parameter werden in einer Prioritätsreihenfolge ausgeführt. Mehrere Parameter mit derselben Priorität werden in der Reihenfolge ausgeführt, in der sie in der Befehlszeile angezeigt werden (von links nach rechts). Die Prioritäten der im Blogbeitrag angezeigten Parameter sind (vom höchsten zum niedrigsten):

 

 10-Hilfe

 9-Listencyclone

 7-Cyclone

 5 -eraseallinternalimages

 5 -eraseallexternalimages

 5 -eraseimage

 4 -addimageinternal

 4 -addimageextern

 4-Listenimage

 3-Startimage

 2 -putdynamicdata

 2 -putdynamicstring

 2-Set-Eigenschaft

 1 -showproperties

 

Cyclone Control Suite - Download und Lizenzierung


Die neueste Cyclone-Installationssoftware enthält die Cyclone Control Suite. Die Cyclone Control Console ist eine der Komponenten der Cyclone Control Suite.

 Die Standardfunktionen der Cyclone Control Suite funktionieren mit jedem Cyclone-Gerät, unabhängig von Modell oder Kaufdatum (keine Lizenz erforderlich).

 Die erweiterten Automatisierungsfunktionen der Cyclone Control Suite erfordern Folgendes:

ein Cyclone FX-Programmierer (keine Lizenz erforderlich) oder
ein Cyclone LC mit einer erweiterten Automatisierungsaktivierung von Cyclone Control
Verschlüsselte Programmierimage erfordern entweder:

ein Cyclone FX-Programmierer (keine Lizenz erforderlich) oder
ein Cyclone LC mit einer ProCryption Security-Aktivierung
Die obigen Blogpost-Beispiele verwenden eine Mischung aus Standard- und erweiterten Funktionen.

 

Fazit


Die Cyclone Control Console ist ein Befehlszeilenprogramm, mit dem der Benutzer Cyclone-Einstellungen lesen / festlegen, Image und Imageschlüssel hinzufügen / entfernen, Image starten und sogar dynamische Daten über die Befehlszeile hinzufügen kann. Es ist eine der drei leistungsstarken Komponenten der Cyclone Control Suite von PEmicro, die sowohl in CYCLONE- als auch in CYCLONE FX-Programmierern enthalten ist.


Anzeige pro Seite
Sortieren nach

Cyclone FX Universal - ISP Programmierer

Artikel-Nr.: CYCLONE-FX-UNIV

Produktions In-System Programmierer für Cortex Flash und 8/16/32 bit Bauteile mit 1 GB Speicher und 75 Mbits/s Programmiergeschwindigkeit.

1.199,00 *
Produktdatenblatt
Auf Lager

Cyclone LC ARM - ISP Programmierer

Artikel-Nr.: CYCLONE-LC-ARM

Der Cyclone LC ARM ist ein Produktions In-System Programmierer für ARM Cortex Flash und 16 MB internen Speicher.

599,00 *
Produktdatenblatt
Auf Lager

Cyclone LC Universal - ISP Programmierer

Artikel-Nr.: CYCLONE-LC-UNIV

Der Produktion In System Programmierer Cyclone LC Universal unterstützt für ARM Cortex Flash Bauteile und 8/16/32 bit Bauteile.

799,00 *
Produktdatenblatt
Auf Lager
*

zzgl. Mwst für Endverbraucher und Unternehmen mit Sitz in Deutschland