Bonjour à tous,
Je vous expose mon problème ; dans un de mes programme, il faut que je réalise l'opération suivante :
- J'ai une variable sur 9 bits (donc qui peut prendre 512 valeurs différentes) ; mon but est de stocker cette variable en EEPROM. J'ai donc déclarer ma variable comme un unsigned int variable = 0. Je vais mettre dans la 1ère adresse EEPROM les 8 bits de poids faibles, et dans la deuxième adresse le bit de poids fort. Je ne savais pas trop comment procéder étant donné qu'il va falloir que je part d'un unsigned int pour obtenir un unsigned char.
Pour l'adresse haute, afin de récupérer mon bit de poids fort, je pensais faire comme ceci :
#define Adresse_High(x) ((unsigned int) (((x))&0x0001)) // Je garde mon bit de poids fort pour l'adresse haute
Le soucis est que je vais obtenir un unsigned int. Comment le "transformer" en unsigned char?
Même problème pour l'adresse basse.
Merci d'avance pour vos réponses.
-----