Bonjour,
Je débute en C, je dois programmer un PIC. Je suis tomber sur une petite routine qui m'intéresse mais je tombe sur un petit inconnu de commande en C.En effet j'ai un bout de code:
Il s'agit de faire un masque sur un octet pour ensuite les transmettre en série sur un bus. Mon souci c'est peu être tout bête mais je ne connais pas la commande dans la parenthèse de la boucle for??Code:char s_write_byte(unsigned char value) //------------------------------------------------------------------------------ // writes a byte on the Sensibus and checks the acknowledge { unsigned char i,error=0; PORT_COND = 0; //SHT11 WRITE for (i=0x80;i>0;i/=2) //shift bit for masking { Delay_us(2); if (i & value) DATA=1; //masking value with i , write to SENSI-BUS else DATA=0; SCK=1; //clk for SENSI-BUS Delay_us(2); //pulswith approx. 5 us SCK=0; }
On fixe une valeur de départ à 0x80
La condition de sortie est pour i>0?
Et alors là ce i/=2 ?
Merci pour votre aide
-----