BSR (spostamento del bit a destra)

L'istruzione BSR sposta un bit in un elemento array verso destra.
Lingue supportate: Diagramma a blocchi funzione, Diagramma Ladder, Testo strutturato.
Questa istruzione vale per i controllori L20E, L50E e L70E.
Dettagli operazione:
L'istruzione BSR è un processo immediato nella transizione del ramo da false a true e negli aggiornamenti in uscita in modo sincrono. Se Execute è TRUE, il bit più a destra (bit 0 dell'elemento indirizzato da Src + SrcOffset) viene copiato nel bit Unload e tutti i bit nel vettore o all'esterno del vettore vengono spostati a destra di un bit. Length e limite di 16 bit vengono considerati tranne che per i tipi di dati BOOL. Il bit esterno viene quindi spostato sul bit 0 (Src + SrcOffset) del primo elemento.
Per le operazioni di testo intorno, impostare la posizione di BitAddr sull'ultima posizione del bit o sul bit Unload. Un possibile utilizzo dell'istruzione BSL consiste nel tracciare bottiglie in una linea di imbottigliamento dove ogni bit rappresenta una bottiglia.
BSR
BSR
Parametro di BSR
Parametro
Tipo di parametro
Tipo di dati
Descrizione
Execute
Ingresso
BOOL
Abilitazione istruzioni.
  • TRUE: fronte di salita rilevato, sposta il bit di una posizione a destra.
  • FALSE: fronte di salita non rilevato, non attivare l'operazione BSR.
Scr
Ingresso
ANY_ELEMENTARY
L'indirizzo del (bit) Src da spostare. Tipi di dati supportati: BOOL, DWORD, INT, UINT, WORD, DINT e UDINT.
  • Vettori: Impostare Scr su un indirizzo a base di variabile come Source1, Source1[0] o Source1[1].
  • Non vettori: Impostare Scr su un indirizzo variabile come Source1.
SrcOffset
Ingresso
UINT
Se SrcOffset è 0, iniziare dal primo elemento.
  • Vettori: Impostare SrcOffset su 0. Se impostato su Source1[0] o Source1[1], si verifica l'errore "L'offset di origine supera le dimensioni del vettore".
  • Non vettori: Impostare SrcOffset su 0; in caso contrario si verifica l'errore "L'offset di origine supera le dimensioni del vettore"
BitAddr
Ingresso
BOOL
Posizione del bit spostato in Src.
Length
Ingresso
UINT
Lunghezza contiene il numero di bit presenti in Src da spostare. Supporta lo spostamento tra elementi dell'array.
  • Per il tipo di dati BOOL, il numero di Booleani presenti nel vettore da spostare.
  • Per i tipi di dati a 16 e 32 bit, i bit vengono spostati in multipli di 16, ad esempio 16, 32 e 64. Se Length non è un multiplo esatto di 16, il numero di bit spostati è il limite successivo di 16 bit.
  • Length si basa sulla dimensione del tipo di dati. Se la Length supera l'intervallo, viene generato l'errore "L'offset di origine supera le dimensioni dell'array". I valori di Length sono:
    • BOOL: 1
    • Parola da 16 bit: 1-16
    • Parola da 32 bit: 1-32
    • Parola da 64 bit: 1-64
Unload
Uscita
BOOL
Bit spostato fuori dall'indirizzo Src.
Error
Uscita
BOOL
Se si verifica un errore, Error viene impostato su true.
ErrorID
Uscita
USINT
Se si verifica un errore, ErrorID contiene il codice dell'errore.
Done
Uscita
BOOL
Se TRUE, l'operazione è stata completata. Se FALSE, l'operazione ha rilevato una condizione di errore.
Codici di errore BSR
Codice di errore
Descrizione errore
01
Dimensione non supportata.
02
Tipo di dati non supportato.
03
La lunghezza dei bit supera 2048.
04
L'offset di origine supera la dimensione dell'array.
05
La lunghezza dei bit supera la dimensione dell'array.
07
Parametro non valido.

Esempi di BSR

Esempio di diagramma a blocchi funzionali BSR
Esempio di diagramma ladder BSR
Esempio di Diagramma Ladder BSR
Esempio di testo strutturato BSR
Esempio di Testo strutturato BSR
Risultati
Risultati
Fornire un feedback
Hai domande o feedback su questa documentazione? invia il tuo feedback qui.
Normal