|

bitSet()


Description :

Définit (écrit un 1 dans) un bit d’une variable numérique à une position spécifique. Utile pour la manipulation de bits de bas niveau, notamment avec des registres matériels, des indicateurs ou des E/S mappées en mémoire.

Syntaxe :

Utilisez la fonction suivante pour définir l’état du bit n sur la position x de la variable:

bitSet(x, n)

Paramètres :

La fonction admet les paramètres suivants :

  • x : la variable numérique dont le bit doit être défini.
  • n : quel bit définir, en commençant à 0 pour le bit le moins significatif (le plus à droite).

Retours :

La fonction renvoie la valeur de la variable numérique après le bit à la position n soit réglé.

Exemple de code :

Modifier un octet donné x en tournant son 5ème bit vers 1:

uint8_t x = 0b10000001; // octet initial

void setup() {
  Serial.begin(9600);
  
  int index = 5; // index du bit à modifier
  
  x = bitSet(x, index-1);

  Serial.print("L'octet résultant est: ");
  Serial.println(x, BIN);
 
}

void loop() {
}

Note :

C’est ce que la fonction bitSet() fait en coulisses :

#define bitSet(value, bit) ((value) |= (1UL << (bit)))


Source : https://docs.arduino.cc/language-reference/en/functions/bits-and-bytes/bitSet/

Publications similaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *