BSR (déplacement à droite à droite de bits)

L'instruction BSR déplace un bit dans un élément du tableau vers la droite.
Langages pris en charge : Diagramme de bloc de fonctions, diagramme de schéma à relais et texte structuré.
Cette instruction s'applique aux contrôleurs
Micro820
L20E,
Micro850
L50E et
Micro870
L70E.
Détails de l'opération :
L'instruction BSR est un processus immédiat sur la transition d'une ligne de FAUX à VRAI et met à jour la sortie de manière synchrone. Lorsque Execute est défini sur VRAI, le bit le plus à droite (bit 0 de l'élément traité par Src + SrcOffset) est copié dans le bit Unload, et tous les bits du tableau (ou non) sont déplacés d'un bit vers la droite. La longueur et la limite de 16 bits sont prises en compte, sauf pour les types de données BOOL. Le bit externe est ensuite déplacé vers le bit 0 (Src + SrcOffset) du premier élément.
Pour les opérations de renvoi à la ligne, définissez la position de BitAddr sur le dernier bit ou sur le bit Unload. Une utilisation possible de l'instruction BSL est le suivi de bouteilles dans une ligne de mise en bouteille où chaque bit représente une bouteille.
BSR
BSR
Paramètre BSR
Paramètre
Type de paramètre
Type de données
Description
Execute
Entrée
BOOL
Activation de l'instruction.
  • TRUE : Front montant détecté, déplace un bit vers la droite d'une position.
  • FALSE : Front montant non détecté, n'active pas l'opération BSR.
Scr
Entrée
ANY_ELEMENTARY
L'adresse de Src (bit) doit être changée. Types de données pris en charge : BOOL, DWORD, INT, UINT, WORD, DINT et UDINT.
  • Tableaux : Définissez Scr sur une adresse basée sur une variable, par exemple Source1, Source1[0] ou Source1[1].
  • Éléments non-tableaux : définissez Scr sur une adresse basée sur une variable, par exemple Source1.
SrcOffset
Entrée
UINT
Si SrcOffset est défini sur 0, commence par le premier élément.
  • Tableaux : définissez SrcOffset sur 0. Si défini sur Source1[0] ou Source1[1], l’erreur « Source offset exceeds the size of the array » (La sortie de la source dépasse la taille du tableau) se produit.
  • Éléments non-tableaux : Définissez SrcOffset sur 0 ou l’erreur « Source offset exceeds the size of the array » (La sortie de la source dépasse la taille du tableau) se produit
BitAddr
Entrée
BOOL
Emplacement du bit décalé dans Src.
Length
Entrée
UINT
Length contient le nombre de bits dans le Src à déplacer. Prend en charge le déplacement d'éléments du tableau.
  • Pour le type de données BOOL, le nombre de valeurs booléennes dans le tableau doit être modifié.
  • Pour les types de données 16 et 32 bits, les bits sont déplacés dans des multiples de 16 (par exemple, 16, 32 et 64). Si Length n'est pas un multiple pair de 16, les bits déplacés sont envoyés à la limite de 16 bits suivante.
  • Length est basé sur la taille du type de données. Si Length dépasse la plage, une erreur se produit : « Source offset exceeds the size of the array » (La sortie de la source dépasse la taille du tableau). Valeurs de Length :
    • BOOL : 1
    • Mot de 16 bits : 1‒16
    • Mot de 32 bits : 1‒32
    • Mot de 64 bits : 1‒64
Unload
Sortie
BOOL
Bit décalé hors de l'adresse de Src.
Error
Sortie
BOOL
Lorsqu'un défaut se produit, Error est défini sur VRAI.
ErrorID
Sortie
USINT
Lorsqu'un défaut se produit, ErrorID contient le code d'erreur.
Done
Sortie
BOOL
Lorsque VRAI, l’opération a réussi. Si FAUX, l’opération a rencontré une condition d’erreur.
Codes d'erreur BSR
Code d'erreur
Description de l'erreur
01
Dimension non prise en charge.
02
Type de donnée non pris en charge.
03
La longueur des bits dépasse 2 048.
04
Le décalage source dépasse la taille du tableau.
05
La longueur des bits dépasse la taille du tableau.
07
Paramètres non valides.

Exemples BSR

Exemple de diagramme de bloc de fonctions BSR
Exemple de schéma à relais BSR
Exemple de schéma à relais BSR
Exemple de texte structuré BSR
Exemple de texte structuré BSR
Résultats
Résultats
Fournir une réponse
Vous avez des questions ou des commentaires sur cette documentation ? Veuillez envoyer vos commentaires ici.
Normal