Bonjour,

Sur un système embarqué à base de µcontroleur, je veux écrire des données dans un buffer mais uniquement une données sur deux.
Ces données proviennent d'un accéléromètre via le bus SPI. Je ne veux sauvegarder dans mon buffer qu'une donnée sur deux. Je me suis arrangé pour toujours avoir un nombre de données paires en provenance de l'accéléromètre.
J'ai déja écrit un petit morceaux de code mais je me demandais s'il y avait une manière plus élégante et surtout plus rapide en temps processeur pour faire ceci.

Voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
 
for(i=0; i< NbrAcc; i++){	
	X[i] = spi_transfer(0x00)<<8; 		//X_MSB byte
	X[i] |= spi_transfer(0x00);			//X_LSB byte
	Y[i] = spi_transfer(0x00)<<8; 		//Y_MSB byte
	Y[i] |= spi_transfer(0x00);			//Y_LSB byte
	Z[i] = spi_transfer(0x00)<<8; 		//Z_MSB byte
	Z[i] |= spi_transfer(0x00);			//Z_LSB byte	
 
	if(i%2==0){	
	buffer_writeDouble(X[i]);		//Store data 1/2 to buffer
	buffer_writeDouble(Y[i]);
	buffer_writeDouble(Z[i]);
	}	
}
Merci.