Bonjour,
je suis actuellement entrain d'essayer de rédiger des routines pour communiquer entre un PIC18 et une horloge DS1306 en liaison SPI.
J'ai pour le moment réussi a écrire les routines d'écriture et de lecture, mais ce n'est pas encore testé.
Par contre, je dois effectuer un travail sur les mots de 8 bits récupérés lors de la lecture du registre concerné, car le chiffre des dizaines est dans le poids fort du mot de 8 bits, et les unités, dans le poids faible.
Exemple:
Je récupère pour les 35 minutes sur 8 bits:
Bit 7 6 5 4 3 2 1 0
0 0 1 1 0 1 0 1
(3) | (5)
Je pense donc réaliser cela:
Qu'en pensez vous?DS1306_Min = ((DS1306_Min & 0xF0)>> 4)*10 + (DS1306_Min & 0x0F);
Par contre, dans le cas inverse, si je veux écrire.
J'ai une variable image des minutes qui varie de 0 à 59, comment faire pour la mettre en forme pour avoir les dizaines sur le poids fort et les unités sur le poids faibles?
J'espère avoir été assez clair dans mon explication...
Merci d'avance pour votre aide
-----