reading from 6 sensors and packaging the data

Dependents:   LSM303D_SPI

Committer:
hassan_elahi
Date:
Mon Mar 23 19:18:57 2015 +0000
Revision:
2:171076b97de0
Parent:
0:f186dd92c836
asfdsd

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DrCoyle 0:f186dd92c836 1 #include <vector.h>
DrCoyle 0:f186dd92c836 2 #include <math.h>
DrCoyle 0:f186dd92c836 3
DrCoyle 0:f186dd92c836 4 void vector_cross(const vector *a,const vector *b, vector *out)
DrCoyle 0:f186dd92c836 5 {
DrCoyle 0:f186dd92c836 6 out->x = a->y*b->z - a->z*b->y;
DrCoyle 0:f186dd92c836 7 out->y = a->z*b->x - a->x*b->z;
DrCoyle 0:f186dd92c836 8 out->z = a->x*b->y - a->y*b->x;
DrCoyle 0:f186dd92c836 9 }
DrCoyle 0:f186dd92c836 10
DrCoyle 0:f186dd92c836 11 float vector_dot(const vector *a,const vector *b)
DrCoyle 0:f186dd92c836 12 {
DrCoyle 0:f186dd92c836 13 return a->x*b->x+a->y*b->y+a->z*b->z;
DrCoyle 0:f186dd92c836 14 }
DrCoyle 0:f186dd92c836 15
DrCoyle 0:f186dd92c836 16 void vector_normalize(vector *a)
DrCoyle 0:f186dd92c836 17 {
DrCoyle 0:f186dd92c836 18 float mag = sqrt(vector_dot(a,a));
DrCoyle 0:f186dd92c836 19 a->x /= mag;
DrCoyle 0:f186dd92c836 20 a->y /= mag;
DrCoyle 0:f186dd92c836 21 a->z /= mag;
DrCoyle 0:f186dd92c836 22 }
DrCoyle 0:f186dd92c836 23