Fonction Arduino Highbyte

Fonction Arduino Highbyte

Arduino a rendu l'électronique et la programmation plus accessibles à un public plus large. Arduino a plusieurs fonctions différentes pour manipuler les données d'octets. Une telle fonction est Highbyte (). Cette fonction extrait les octets élevés des données d'entrée données. Cet article couvrira en détail la fonction Arduino Highbyte ().

Fonction HighByte () dans Arduino

La fonction HighByte () fait partie de la bibliothèque de référence en langue Arduino qui permet à l'utilisateur d'extraire l'octet élevé d'une variable 16 bits. Un octet est une unité de données qui peut stocker une valeur de 0 à 255. Une variable 16 bits, en revanche, peut stocker une valeur de 0 à 65 535.

Explication de la fonction Arduino Highbyte ()

La fonction HighByte () extrait l'octet le plus significatif (l'octet élevé) d'une variable 16 bits. L'octet élevé est l'octet qui contient les bits les plus significatifs de la variable, tandis que l'octet faible contient les bits les moins significatifs. La fonction HighByte () est utile lorsqu'il s'agit de variables 16 bits, telles que les valeurs de convertisseur analogique-numérique (ADC), les valeurs PWM et les valeurs de temporisation.

Syntaxe de la fonction HighByte ()

La syntaxe de la fonction HighByte () est la suivante:

Highbyte (x)

Où x est la variable 16 bits dont nous voulons extraire l'octet élevé.

Paramètre

La fonction ne prend qu'un seul paramètre, qui est la valeur 16 bits pour extraire l'octet élevé de.

Retour

La valeur de retour de la fonction highbyte () est une valeur de 8 bits, qui représente l'octet élevé de la valeur d'entrée 16 bits. La valeur de retour est un entier non signé entre 0 et 255.

Exemples de fonction HighByte ()

Voici un exemple complet du code Arduino qui démontre l'utilisation de la fonction HighByte ():

void setup()
// Initialise la communication série à 9600 bits par seconde:
En série.commencer (9600);

VOID LOOP ()
// Créer une valeur entière 16 bits:
unsigned int myvalue = 0xabcd;
// Extraire l'octet élevé de la valeur 16 bits:
Char non signé HighByteValue = HighByte (MyValue);
// Imprime la valeur d'origine et la valeur d'octets élevée au moniteur série:
En série.print ("Valeur d'origine:");
En série.imprimer (myvalue, hex);
En série.print (", valeur d'octet élevée:");
En série.println (highbytevalue, hex);
// attendez 1 seconde avant de répéter la boucle:
retard (1000);

Dans cet exemple, la fonction Configuration () initialise la communication série avec un taux de bauds de 9600. La fonction Loop () crée une valeur entière 16 bits myvalue, extrait son octet élevé en utilisant le Fonction HighByte (), puis imprime à la fois la valeur d'origine et la valeur d'octet élevée au moniteur série à l'aide de la série.Fonction print (). La fonction de retard () est utilisée pour suspendre la boucle pendant 1 seconde avant de répéter.

Lorsque vous téléchargez ce code sur une carte Arduino et ouvrez le moniteur série, vous devriez voir la valeur d'origine 0xabcd et la valeur d'octet élevée 0xab imprimé à plusieurs reprises, une fois à chaque seconde.

Conclusion

La fonction HighByte () est une fonction essentielle dans Arduino qui permet à l'utilisateur d'extraire l'octet le plus significatif d'une variable 16 bits. Il est utile lorsqu'il s'agit de variables 16 bits, telles que les valeurs ADC, les valeurs PWM et les valeurs de minuterie. Pour plus de détails sur le paramètre de fonction HighByte (), la valeur de retour et la syntaxe lisent l'article.