Questo function block da eseguire in task Back, gestisce l’interfaccia a linea di comando in modalità server. In CBSize occorre indicare la dimensione del buffer di ricezione comandi. In CBegin e CBLength è possibile definire un’eventuale stringa di inizio comando. In CEnd e CELength è possibile definire un’eventuale stringa di fine comando.
Alla ricezione dei dati dallo stream di comunicazione definito in Fp se attivo EchoOn viene eseguito l’echo dei dati ricevuti. Se definita la stringa di inizio comando i dati ricevuti dopo la stringa sono sono trasferiti nel buffer.
Se non definita stringa di fine comando si attende di non ricevere più caratteri per il tempo definito in CWTime e si attiva per un loop Done, in CBuffer sono presenti tutti i dati ricevuti, RxChrs ne ritorna il numero.
Se definita stringa di fine comando alla sua ricezione si attiva per un loop Done, in CBuffer sono presenti tutti i dati ricevuti, RxChrs ne ritorna il numero. Se definito CWTime alla ricezione della stringa di fine comando si attende di non ricevere più caratteri per il tempo definito prima di attivare Done.
In caso di errore viene attivata per un loop di programma l’uscita Fault.
Descrizione
Enable (BOOL) Abilita ricezione comando. Terminata la ricezione di un comando per ricevere un nuovo comando disabilitare e poi riabilitare questo ingresso.
SpyOn (BOOL) Se attivo permette di spiare il funzionamento della FB (Vedi articolo).
EchoOn (BOOL) Se attivo viene eseguita la ritrasmissione del carattere ricevuto.
Fp (FILEP) Flusso dati stream da utilizzare per la comunicazione.
CBSize (UDINT) Dimensione buffer memorizzazione comando.
CBegin (PVOID) Puntatore alla stringa di definizione inizio comando. Se eNULL non viene controllata.
CBLength (UDINT) Dimensione stringa inizio comando. Se 0 non viene controllata.
CEnd (PVOID) Puntatore alla stringa di definizione fine comando. Se eNULL non viene controllata.
CELength (UDINT) Dimensione stringa fine comando. Se 0 non viene controllata.
CWTime (TIME) Tempo di attesa fine ricezione caratteri.
Timeout (TIME) Timeout esecuzione.
Done (BOOL) Si attiva su ricezione comando. Si disattiva su disabilitazione ingresso Enable.
Fault (BOOL) Attivo in caso di errore.
RxChrs (UDINT) Lunghezza stringa comando ricevuta.
CBuffer (PVOID) Puntatore a buffer comando ricevuto.

Trigger di spy
Se SpyOn attivo è possibile utilizzare la console di spionaggio per verificare il funzionamento della FB. Sono previsti vari livelli di triggers.
Livelli di trigger
Trigger | Descrizione |
---|---|
16#00000001 | Rx: Ricezione comando. |
16#40000000 | Er: Errore esecuzione |
Esempi
Come utilizzare gli esempi.
Connettendosi al programma con un emulatore di terminale (Esempio l’utility Terminal di Toolly) è possibile inviare dei comandi che saranno eseguiti. Il comando Help ritorna l’elenco dei comandi gestiti.