PEmicro-erlebniswelt

Programmazione automatizzata con la console di controllo Cyclone

La Console di controllo Cyclone è una potente applicazione a riga di comando che può essere utilizzata per controllare uno o più Cyclone contemporaneamente. È possibile aggiungere/rimuovere immagini di programmazione, leggere/impostare impostazioni, avviare operazioni di programmazione e programmare dati dinamici. L'applicazione a riga di comando visualizza messaggi di stato completi e restituisce anche un codice di errore che indica il successo o il fallimento. L'applicazione può essere avviata da uno script, da una console o da un'altra applicazione. È uno dei tre componenti principali della Cyclone Control Suite, che comprende: la Cyclone Control Console, la Cyclone Control GUI e il Cyclone Control SDK.

Questo blog post mostra molte operazioni comuni di programmazione di Cyclone che possono essere facilmente eseguite utilizzando l'applicazione Cyclone Control Console.

La Guida dell'utente di Cyclone contiene informazioni sui vari parametri della riga di comando disponibili su Cyclone. La Console di controllo del Cyclone può anche visualizzare un elenco sintetico dei parametri disponibili utilizzando il parametro della riga di comando -help.

 

Elenco dei parametri della riga di comando disponibili nella Console di controllo del Cyclone

L'elenco dei comandi correnti può essere sempre recuperato dall'applicazione della console utilizzando il parametro della riga di comando -help. Vengono visualizzate le opzioni disponibili:

1

 

Esempi di connessioni Cyclone
 

Elenco dei cicloni rilevati automaticamente

I cicloni possono essere collegati al PC tramite interfacce USB, Ethernet e seriali. i cicloni collegati tramite connessioni USB ed Ethernet possono essere rilevati automaticamente. Per quanto riguarda l'Ethernet, vengono rilevati automaticamente solo i cicloni della subnet locale (i cicloni remoti possono essere controllati dalla console ma non vengono rilevati automaticamente). Vengono elencati il nome, l'IP e il numero di porta del Cyclone. Ciascuno di questi identificativi può essere utilizzato per aprire un Cyclone. Il nome e l'indirizzo IP sono consigliati per aprire un Cyclone, poiché il numero di porta può cambiare a seconda del numero di Cyclone collegati.

In questo esempio, vengono rilevati tre Cyclone, ognuno dei quali è collegato al PC tramite connessioni USB ed Ethernet.

2

Nota: se un Cyclone è collegato sia via USB che via Ethernet, verrà elencato due volte.

 

aprire un Cyclone per nome (ed elencare le immagini)

Aprire un Cyclone per nome è il metodo più comune per specificare un Cyclone. Funziona indipendentemente dal fatto che sia collegato via USB o Ethernet. L'identificatore selezionato è specificato dal parametro della riga di comando -cyclone=[identificatore], dove [identificatore] è il nome, l'IP o la porta del Cyclone. La maggior parte delle operazioni da riga di comando (ad esempio l'avvio della programmazione) utilizza il parametro -cyclone per specificare i cicloni da aprire e poi aggiunge altri parametri per specificare le funzioni da eseguire. È possibile specificare più cicloni in un elenco separato da virgole o utilizzando parametri da riga di comando con più cicloni.

In questo esempio, abbiamo anche un parametro da riga di comando -listimages che specifica che l'utility deve visualizzare l'elenco delle immagini presenti nella memoria interna ed esterna del Cyclone specificato.

Ecco un esempio di apertura del Cyclone "Ada" per nome e l'elenco delle immagini in esso contenute.

3

Le immagini di programmazione sono elencate per numero. Ogni immagine specifica anche "eSAP" se l'immagine è criptata, o "SAP" se l'immagine non è criptata. Anche la posizione dell'immagine è indicata come "Interna" per le immagini memorizzate nella memoria interna del Cyclone, o "Esterna" per le immagini memorizzate su una scheda di memoria SD nella porta SDHC del Cyclone (licenza di attivazione della porta Cyclone FX o SDHC richiesta ai modelli LC). Infine, viene elencata la descrizione dell'immagine (che può differire dal nome del file).

Nota: il nome di un Cyclone può essere impostato tramite il touchscreen LCD o tramite uno dei componenti della Cyclone Control Suite (GUI, Console e SDK). Una volta impostato il nome, questo viene salvato nella memoria non volatile del Cyclone e conservato fino a quando non viene modificato. Altri modi per aprire un Cyclone sono l'indirizzo IP o il numero di porta.

 

aprire un Cyclone per porta (ed elencare le immagini)

Oltre al nome e al numero IP, è possibile specificare un Cyclone in base al nome della porta. Questo può essere utile se solo un Cyclone è collegato ai bus USB/Ethernet o se il Cyclone è collegato tramite una porta COM. Per aprire un Cyclone collegato a una specifica porta COM, utilizza il numero di porta COM corrispondente (COM1 ... COM8). Usa USB1 (le porte USB vanno da USB1 a USB39) per aprire il primo Cyclone USB rilevato. Usa Ethernet1 (le porte Ethernet vanno da Ethernet1 a Ethernet99) per aprire il primo ciclone Ethernet. Nota che i cicloni sono elencati in un ordine ordinato per determinare il numero di porta. Pertanto, i numeri di porta possono cambiare con il numero di Cyclone rilevati. Per questo motivo, si consiglia di utilizzare il nome del ciclone o l'indirizzo IP per specificare i cicloni corrispondenti quando si utilizzano più cicloni contemporaneamente. Tuttavia, quando si utilizza un solo Cyclone, il numero di porta può essere un modo semplice per aprire un Cyclone collegato al PC senza conoscerne l'indirizzo IP o il nome.

Un esempio di apertura del primo Cyclone rilevato sul bus USB:

Di seguito è riportato un esempio di apertura di un Cyclone in base al suo indirizzo IP. Il Cyclone può essere collegato in remoto dal PC. In questo caso, l'indirizzo IP, l'indirizzo del gateway e la netmask del Cyclone devono essere impostati correttamente per la rete a cui è collegato. Esempio di apertura tramite indirizzo IP:

 

aprire più Cyclone (ed elencare le immagini)

Aprire più Cyclone è semplice. puoi passare un elenco di nomi di cicloni separati da virgole al parametro -cyclone=(ad esempio -cyclone=ada, colossus, hal9000) oppure utilizzare più parametri -cyclone (ad esempio -cyclone=ada -cyclone=colossus -cyclone=hal9000). . Le altre operazioni della riga di comando vengono eseguite su tutti i cicloni aperti, compreso l'avvio della programmazione, ad eccezione della programmazione dei dati dinamici (dove il ciclone a cui applicare i dati dinamici viene specificato come parte del parametro). Ecco un esempio di elenco di immagini su due cicloni:

Esempi di gestione delle immagini (aggiunta/rimozione)

Aggiunta di un'immagine di programmazione a un Cyclone


Le immagini possono essere aggiunte a un Cyclone utilizzando il parametro della riga di comando -addimageinternal=e specificando il nome del file dell'immagine di programmazione da aggiungere . È possibile specificare più cicloni e più immagini sulla stessa riga di comando. In questo esempio, aggiungiamo una sola immagine a un solo Cyclone:


6

Nota che puoi caricare un'immagine di programmazione criptata (file eSAP) su un Cyclone solo se l'ImageKey associata all'immagine criptata è presente sul Cyclone. Per maggiori informazioni, consulta la sezione Immagini SAP crittografate.

 

Rimozione di un'immagine di programmazione da un Cyclone


Alcune immagini possono essere rimosse da un Cyclone per numero, descrizione o descrizione compressa. Una descrizione compressa è la descrizione dell'immagine con tutti gli spazi rimossi (per facilitare l'uso dei parametri della riga di comando se la descrizione contiene spazi). L'identificatore specificato non è sensibile alle maiuscole e alle minuscole. Il Cyclone HAL9000 di questo esempio ha attualmente le seguenti immagini di programmazione:

 

Immagine su Cyclone HAL9000

   Immagine 1 (interna a SAP): Immagine rossa v1.0

   Immagine 2 (interna SAP): Immagine verde v1.0

   Immagine 3 (interno SAP): Immagine blu v1.0

   Immagine 4 (interno SAP): Immagine rossa codice a barre v1.0

   Immagine 5 (interno SAP): Immagine verde Codice a barre v1.0

   Immagine 6 (interno SAP): Immagine blu Codice a barre v1.0

   Immagine 7 (interno SAP): Esecuzione dell'applicazione di prova v1.02

   Immagine 8 (interno SAP): Verde

 

Nell'esempio seguente, rimuoviamo un'immagine utilizzando la sua descrizione completa (spazi inclusi). Poiché questo esempio viene eseguito su Windows, circondiamo un parametro con doppi apici per indicare che si tratta di un parametro anche se contiene spazi:


7

Nell'esempio seguente, rimuoviamo un'immagine in base alla sua descrizione compressa. Questo funziona su tutti i sistemi operativi, anche se la descrizione vera e propria contiene spazi (li omettiamo nella riga di comando). Per questo motivo, consigliamo di utilizzare descrizioni compresse. Nota che le virgolette non sono necessarie in questo esempio:


8

 

Nell'esempio seguente, rimuoviamo un'immagine in base al suo numero:


9

 

Nota che quando le immagini vengono eliminate, i numeri delle immagini cambiano. Se ci sono 5 immagini e l'immagine 4 viene eliminata, l'immagine 5 diventa l'immagine 4.

 

 

Eliminare tutte le immagini in un ciclone


Esistono due parametri da riga di comando che ti permettono di eliminare gruppi di immagini nel ciclone in modo da non doverle rimuovere singolarmente:

 

  -eraseallinternalimages: cancella tutte le immagini interne dei cicloni aperti

  -eraseallexternalimages: cancella tutte le immagini esterne dai cicloni aperti

 

Le immagini interne si trovano nella memoria interna criptata del Cyclone, mentre le immagini esterne si trovano su una SDCard criptata collegata al Cyclone. Le immagini possono essere cancellate da più Cyclone specificando più di un Cyclone sulla linea di comando. In questo esempio, cancelleremo tutte le immagini interne al Cyclone HAL9000:


10

 

Aggiungere più immagini a più Cyclone


Quello che segue è un esempio di combinazione di diverse tecniche di gestione delle immagini. Apriamo due Cyclone (Agnes e Colossus), cancelliamo tutte le immagini interne e poi aggiungiamo sei immagini di programmazione a ciascun Cyclone, il tutto con un solo comando:


11

 

 

Esempi di lancio della programmazione

Avvio di un'immagine di programmazione su un Cyclone


Le immagini nel Cyclone possono essere selezionate e avviate specificando il numero dell'immagine nel Cyclone, la descrizione dell'immagine o la versione compressa della descrizione dell'immagine (senza spazi).

Questo esempio mostra come avviare la programmazione di un'immagine specificata nella sua descrizione compressa:


12

 

Questo esempio mostra come avviare la programmazione di un'immagine specificata dal suo numero nel Cyclone:


13

 

Nota: la programmazione di un'immagine criptata (eSAP) non può essere avviata se l'ImageKey di quel file è stata rimossa dal Cyclone. Per maggiori informazioni, consulta la sezione Immagini SAP criptate.

Avvio della stessa immagine su diversi cicloni contemporaneamente, selezionati per nome
La stessa immagine può essere avviata su diversi cicloni contemporaneamente, semplicemente specificando diversi cicloni nella riga di comando. Se ci sono diversi set di immagini su ogni Cyclone, l'uso delle descrizioni delle immagini compresse è un buon modo per assicurarsi che venga lanciata l'immagine di programmazione appropriata . Se il set di immagini su ogni Cyclone è identico, il numero di immagine corrisponderà. Pertanto, il numero di immagine è un altro modo per lanciare la stessa immagine su più Cyclone. In questo esempio, la descrizione dell'immagine compressa viene utilizzata per avviare la programmazione:


14

 

Lancio simultaneo di diverse immagini su diversi Cyclon, selezionate in base al numero

A volte ci sono diversi microcontrollori su una scheda che devono essere programmati contemporaneamente. Spesso è vantaggioso utilizzare più Cyclon, ognuno dei quali programma un'immagine diversa allo stesso tempo. L'approccio consiste nell'assicurarsi che ogni Cyclone sia caricato con un'immagine diversa in modo che abbia lo stesso numero in ogni Cyclone. Un modo semplice per farlo è cancellare tutte le immagini in entrambi i Cyclone e poi aggiungere un'immagine diversa a ciascun Cyclone. In questo caso, l'immagine 1 sarebbe diversa in ogni ciclone, ma potrebbe essere avviata contemporaneamente:


15

 

Programmare i dati dinamici dopo la programmazione delle immagini

Oltre a programmare i dati specificati come parte di un'immagine di programmazione , è possibile programmare altri dati in ogni dispositivo di destinazione. Questi dati possono essere specificati ogni volta che si avvia un'immagine di programmazione e quindi possono essere personalizzati per ogni singolo dispositivo. I dati dinamici possono essere utilizzati in molti modi: serializzazione personalizzata, configurazione, tracciamento, codifica della data, ecc. È possibile specificare più serie di dati dinamici sulla riga di comando. I dati possono essere forniti come array di byte o come stringa null-terminated.

 

Come parte del parametro di programmazione dei dati dinamici, è necessario specificare il numero di maniglia del Cyclone. Questo permette di programmare dati dinamici diversi nei target associati a ogni Cyclone aperto. Se è stato avviato un solo Cyclone, viene utilizzato il valore 1. Se sono stati specificati tre Cyclone, il valore è 1. Se sulla riga di comando vengono specificati tre Cyclone, questi saranno numerati 1, 2 e 3 in ordine da sinistra a destra.

 

La sintassi per programmare i dati dinamici come array di byte è la seguente:

 

   -putdynamicdata=[numero del ciclone], [indirizzo], [dati]

 

Nell'esempio seguente, programmiamo un array di 4 byte di numeri di serie generati dall'utente nel target al termine della programmazione dell'immagine principale:


16

 

Nota: quando si programmano dati dinamici, la programmazione dell'immagine deve essere avviata da questa riga di comando.

 

La sintassi per programmare i dati dinamici come stringa a terminazione nulla è la seguente:

 

  -putdynamicstring=[numero del ciclone], [indirizzo], [stringa]

 

Nell'esempio seguente, programmiamo una stringa di indirizzo IP generata dall'utente nel target al termine della programmazione dell'immagine principale:


17

 

Nota: la programmazione dell'immagine deve essere avviata come parte della linea di comando quando si programmano dati dinamici. Gli esempi riportati riguardano i numeri di serie e le stringhe IP generate dal cliente. Il Cyclone supporta anche il conteggio automatico dei numeri di serie da memorizzare come parte dell'immagine.

 

Programmare dati dinamici diversi in destinazioni multiple da Cyclone diversi


Nell'esempio seguente, programmiamo un numero di serie unico generato dall'utente e una stringa di indirizzo IP unica generata dall'utente in due destinazioni diverse associate a due Cyclone diversi:

 


18

 

Nota: la programmazione delle immagini deve essere avviata come parte della linea di comando quando si programmano dati dinamici. Gli esempi riportati riguardano i numeri di serie e le stringhe IP generati dal cliente. Il Cyclone supporta anche il conteggio automatico dei numeri di serie memorizzati come parte dell'immagine.

 

Leggere / scrivere le proprietà del Cyclone / dell'immagine


Ci sono molte proprietà del Cyclone e della sua immagine residente che possono essere utili per essere visualizzate e, in alcuni casi, modificate.

 

Recuperare un elenco di categorie di proprietà dal Cyclone


Le proprietà sono memorizzate nel Cyclone in varie categorie, tra cui impostazioni di sistema, impostazioni di rete, impostazioni specifiche dell'immagine e altre. L'elenco delle categorie disponibili può essere visualizzato utilizzando il parametro della riga di comando -showproperties=senza nulla dopo il segno di uguale.


19

 

Leggere l'elenco dei nomi/valori delle proprietà di una categoria


Nell'esempio seguente, mostriamo le proprietà della categoria "Proprietà del ciclone". Queste includono il nome del ciclone e il numero di immagini presenti nel ciclone. La sintassi del parametro della riga di comando -showproperties è la seguente:

 

  -showproperties=[category], [image name or #]

 

In questo modo verranno mostrate tutte le proprietà della categoria. Lascia lo spazio vuoto dopo l'= per l'intero elenco delle categorie. In questo caso, possiamo impostare il nome dell'immagine o il numero dell'immagine a 0 o lasciarlo vuoto, poiché non stiamo accedendo alle proprietà di un'immagine.


20

 

Leggere le proprietà dell'immagine come il numero di serie successivo e il CRC


Le proprietà delle immagini memorizzate nel Cyclone possono essere lette accedendo alla categoria Proprietà dell'immagine e specificando il nome o il numero dell'immagine. La sintassi del parametro della riga di comando -showproperties è la seguente:

 

  -showproperties=[category], [image name or #]

 

In questo modo verranno mostrate tutte le proprietà della categoria. Lascia lo spazio vuoto dopo l'= per l'intero elenco delle categorie. In questo caso, leggiamo le proprietà dell'immagine "green_serial". Notiamo che vengono visualizzate informazioni come il CRC e il numero di serie dell'immagine:


21

 

L'immagine ha un unico numero di serie, che attualmente è "PE-00b". Al prossimo avvio della programmazione, il target sarà programmato con il numero di serie "PE-00b". Quando il file seriale viene incrementato di 2, il Cyclone aumenta automaticamente il numero di serie a "PE-00d". Questo numero di serie è un esempio della capacità del Cyclone di contare automaticamente il numero di serie. PEmicro dispone di un'utility per la definizione dei numeri di serie che consente all'utente di creare numeri di serie con conteggio automatico.

 

A scopo dimostrativo, avviamo la programmazione e visualizziamo il numero di serie con un unico comando da console. Come parte del processo di programmazione, "PE-00b" viene programmato nel target e il numero di serie memorizzato per l'immagine viene cambiato in "PE-00d":


22

 

Impostazione del nome di un Cyclone scrivendo la proprietà "Cyclone name"


Alcune impostazioni del Cyclone sono scrivibili, ad esempio le impostazioni di rete e il nome del Cyclone. In questo esempio, impostiamo il nome del Cyclone. Impostare il nome di un Cyclone può essere utile perché con il nome possiamo specificare un particolare Cyclone per altri comandi. Questo può essere semplice come dichiarare la funzione del dispositivo "JuliesCycloneDoNotTouch" o scegliere un nome che implica una posizione, come "ProductXFixtureSlot3".

 

Iniziamo ad elencare i cicloni rilevati automaticamente:


23

Il Cyclone chiamato Ada è elencato sia sul bus USB che su quello Ethernet del PC. Esaminiamo la categoria "Proprietà del ciclone" del ciclone di nome Ada:


24

 

Come previsto, la proprietà del nome del ciclone è Ada. Lo sappiamo perché è il nome che gli abbiamo associato. Supponiamo di voler cambiare il nome in Skynet. Utilizzeremo il comando -setproperty=per cambiare il valore. La sintassi del comando è

 

  -setproperty=[categoria], [nome dell'immagine o #], [proprietà], [valore]

 

Dal momento che il nome non appartiene alla categoria "proprietà dell'immagine", possiamo impostare il numero dell'immagine a 0. In questo caso cambiamo il nome da Colossus a Skynet:


25

 

Se ora interroghiamo i Cyclone presenti sui bus USB ed Ethernet, possiamo vedere che il nome del Cyclone è stato cambiato da Ada a Skynet:


26

 

Gestire le immagini SAP criptate


La Console di controllo Cyclone offre dei comandi per gestire le immagini di programmazione criptate (eSAP). Questi comandi ti permettono di elencare, aggiungere e cancellare le ImageKey. Si tratta di file utilizzati per criptare un'immagine di programmazione. Un'immagine eSAP non può essere caricata su un Cyclone o avviata per la programmazione dopo il caricamento se l'ImageKey utilizzata per crittografare l'immagine eSAP non è presente sul Cyclone.

Determinare lo stato di crittografia di un'immagine di programmazione

Il comando -listimages viene utilizzato per elencare le immagini di programmazione presenti su un determinato Cyclone. Questo elenco di immagini indica se ogni immagine è criptata o meno. Le immagini elencate come "eSAP" sono criptate, quelle elencate come "SAP" non lo sono. Le prime due immagini di programmazione elencate nella schermata seguente sono criptate.


27

Informazioni specifiche sullo stato di crittografia di una singola immagine di programmazione possono essere visualizzate con il comando -showproperties=imageproperties per quella particolare immagine. I valori rilevanti per la crittografia delle immagini sono tre:

1) La proprietà imageEncryptionStatus mostra lo stato di crittografia di un'immagine di programmazione come uno dei tre valori seguenti:

Crittografata. Pronta per l'esecuzione.
Encrypted. Bloccato - Nessuna chiave trovata.
Non crittografato. Pronto per l'esecuzione
2) La proprietà imageKeyDescription visualizza il nome dell'eventuale ImageKey associata all'immagine di programmazione .

3) La proprietà imageKeyID mostra l'ID univoco della ImageKey, se presente, associata all'immagine di programmazione .

La schermata seguente mostra tutte le proprietà dell'immagine "K64 Encrypted BB 16K":


28

Queste caratteristiche indicano che si tratta di un'immagine criptata, ma che manca l'ImageKey. L'immagine è quindi bloccata e non può essere programmata. L'ImageKey necessaria per sbloccare questa immagine e poterla programmare si chiama "Kevin BB" e il suo ID # è "pei-6D479B42-51D84364-5CA47697".

Utilizzo dei comandi ImageKey
Di seguito viene illustrato come utilizzare i comandi ImageKey della console di controllo del Cyclone per determinare quale ImageKey manca, caricarla sul Cyclone in modo da poter programmare l'immagine e poi cancellarla di nuovo per bloccare l'immagine criptata.

La console fornisce i comandi per elencare, aggiungere e rimuovere le ImageKey:

-listEncryptionKeys
-addEncryptionKey=[percorso del file]
-deleteEncryptionKey=[ID oggetto o indice di visualizzazione]


Elencare le ImageKeys

Per prima cosa, il comando -listEncryptionKeys mostra che c'è una ImageKey sul Cyclone (il cui indice di visualizzazione è 1), ma non è la chiave denominata "Kevin BB" di cui abbiamo bisogno per sbloccare l'immagine :


29

Aggiungere una ImageKey

Il comando -addEncryptionKey viene quindi utilizzato per aggiungere l'ImageKey mancante al Cyclone. È richiesto il percorso del file dell'ImageKey:


30

Il comando -listEncryptionKeys indica ora che l'ImageKey richiesta è stata aggiunta all'indice 2 del display:


31

Un'altra occhiata alle proprietà dell'immagine mostra che l'immagine criptata è ora programmabile:


32

 

Eliminare una ImageKey

L'utente potrebbe voler rimuovere questa ImageKey in un secondo momento in modo che il file eSAP "K64 Encrypted BB 16K" non possa essere programmato. Questo si può fare utilizzando il comando -deleteEncryptionKey con l'ID dell'ImageKey o (come nell'esempio seguente) l'indice di visualizzazione dell'ImageKey:


33

Se si rielenca l'elenco delle ImageKey con il comando -listEncryptionKeys, si nota che l'ImageKey è stata rimossa.


34

 

Per ulteriori informazioni sulla crittografia delle immagini di Cyclone, consulta il post del blog "Cyclone aggiunge la crittografia RSA / AES per la programmazione di produzione".

 

Ulteriori note / caratteristiche


Ripristino dei risultati di successo/insuccesso da Python / Bash / Batch / ecc.


La Console di controllo Cyclone non solo visualizza le informazioni di successo e di errore come stringhe scritte sulla console, ma restituisce anche un codice di errore corrispondente al sistema operativo del PC. Questo codice di errore può essere testato in un'applicazione o in vari linguaggi di scripting. Un codice di errore pari a zero indica un'operazione riuscita, mentre un codice di errore diverso da zero indica un errore.

 

Ecco un esempio di file batch di Windows che può essere utilizzato per recuperare le informazioni di successo/errore da Cyclone Control Console:

 

cyclonecontrolconsole -cyclone=Agnes -launchimage=green_serial

Se il livello di errore 1 non si è più verificato

echo Programmato con successo!

pronto

:Si è verificato un errore

Echo programmazione fallita !!!!!

:done

 

Ecco un esempio di script di shell bash che può essere utilizzato per recuperare le informazioni di successo/errore dalla console di controllo del Cyclone:

 

#! / bin / bash

cyclonecontrolconsole -cyclone=Agnes -launchimage=green_serial

errorReturn=$?

se [$ errorReturn== 0]; allora

  Echo 'Programmato con successo!

altrimenti

  echo 'Programmazione fallita !!!!! con il codice di errore '$ errorReturn

  Esci da 1

fi

 

Ecco un esempio di script Python che può essere utilizzato per recuperare le informazioni di successo/errore dalla Console di controllo Cyclone:

 

Importazione di un sottoprocesso

importare sys

 

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

print ("Stampa STDOUT:")

print (P.stdout.decode ())

se P.returncode== 0:

print ("Programmato con successo!")

altrimenti:

print ("Programmazione fallita!!! con codice di errore" + str (P.returncode))

sys.exit (1)

 

Ordine di esecuzione dei parametri della riga di comando


I parametri della riga di comando vengono tutti valutati prima di essere eseguiti. Se c'è un parametro non valido, la Console di controllo Cyclone genera un errore e indica quale parametro non è stato compreso. I parametri vengono eseguiti in ordine di priorità. Più parametri con la stessa priorità vengono eseguiti nell'ordine in cui sono visualizzati sulla riga di comando (da sinistra a destra). Le priorità dei parametri visualizzati nel blog post sono (dalla più alta alla più bassa):

 

 10-Aiuto

 9-Listencyclone

 7-Ciclone

 5 -cancella tutte le immagini interne

 5 -cancella tutte le immagini esterne

 5 -cancella immagine

 4 -aggiungi immagine interna

 4 -aggiungi immagine esterna

 4-istimage

 3 -immagine-stella

 2 -immettere dati dinamici

 2 -inserisci stringa dinamica

 2-imposta proprietà

 1 -mostra proprietà

 

Cyclone Control Suite - Download e licenze


L'ultimo software di installazione di Cyclone include Cyclone Control Suite. La Cyclone Control Console è uno dei componenti della Cyclone Control Suite.

 Le funzioni standard di Cyclone Control Suite funzionano con qualsiasi unità Cyclone, indipendentemente dal modello o dalla data di acquisto (non è richiesta alcuna licenza).

 Le funzioni di automazione avanzate della Cyclone Control Suite richiedono quanto segue:

un programmatore Cyclone FX (non è richiesta alcuna licenza) o
un Cyclone LC con attivazione dell'automazione avanzata Cyclone Control
L'immagine di programmazione criptata richiede:

un programmatore Cyclone FX (senza licenza) o
un Cyclone LC con attivazione di ProCryption Security
Gli esempi di blogpost sopra riportati utilizzano un mix di funzioni standard e avanzate.

 

Conclusione


La Cyclone Control Console è un'utility a riga di comando che permette all'utente di leggere/impostare le impostazioni di Cyclone, aggiungere/rimuovere immagini e chiavi di immagine, lanciare immagini e persino aggiungere dati dinamici dalla riga di comando. È uno dei tre potenti componenti della Cyclone Control Suite di PEmicro inclusa nei programmatori CYCLONE e CYCLONE FX.

Programmatore Cylone Standalone

pemicro cyclone fx universalCyclone FX Universal Header Layout
Cyclone Universal FX
CYCLONE-FX-UNIV
Il PEmicro Cyclone FX Universal è un programmatore indipendente per processori ARM e 8/16/32 bit.

1.369,00 €*
pemicro cyclone fx armCyclone FX ARM Header Layout
Cyclone FX ARM
CYCLONE-FX-ARM
Il PEmicro Cyclone FX ARM è un programmatore indipendente per processori ARM.

1.199,00 €*
PEmicro cyclone lc universalpemicro cyclone lc universal header layout
Cyclone LC Universal
CYCLONE-LC-UNIV
Il PEmicro Cyclone LC Universal è un programmatore indipendente per processori ARM e 8/16/32 bit.

979,00 €*