1

Dependencies:   sMotor LIS3MDL X_NUCLEO_53L0A1

Committer:
simens
Date:
Thu May 23 05:55:34 2019 +0000
Revision:
0:ed3e71232bc7
123

Who changed what in which revision?

UserRevisionLine numberNew contents of line
simens 0:ed3e71232bc7 1
simens 0:ed3e71232bc7 2 #include "L3G4200D_my.h"
simens 0:ed3e71232bc7 3
simens 0:ed3e71232bc7 4 void GyroL3G4200D_Ini(DevI2C *gyro)
simens 0:ed3e71232bc7 5 {
simens 0:ed3e71232bc7 6 char data_write[2];
simens 0:ed3e71232bc7 7
simens 0:ed3e71232bc7 8 wait(0.02);
simens 0:ed3e71232bc7 9 data_write[0]=CTRL_REG1; // DR1 DR0 BW1 BW0 PD Zen Yen Xen
simens 0:ed3e71232bc7 10 data_write[1]=0x1f; // 0 0 0 1 1 1 1 1 dr=100Hz, BW=25
simens 0:ed3e71232bc7 11 gyro->write(I2C_ADDR_GYRO,data_write, 2,0); // 1-no stop
simens 0:ed3e71232bc7 12 }
simens 0:ed3e71232bc7 13
simens 0:ed3e71232bc7 14 //-----------------------------------------------
simens 0:ed3e71232bc7 15 void GyroL3G4200D_GetAxis(DevI2C *gyro,int16_t* g)
simens 0:ed3e71232bc7 16 {
simens 0:ed3e71232bc7 17 char data_write[2];
simens 0:ed3e71232bc7 18 char buffer[6];
simens 0:ed3e71232bc7 19
simens 0:ed3e71232bc7 20 data_write[0]=OUT_X_L|0x80;
simens 0:ed3e71232bc7 21 gyro->write(I2C_ADDR_GYRO,data_write, 1,1); // 1-no stop
simens 0:ed3e71232bc7 22 gyro->read(I2C_ADDR_GYRO,buffer, 6,0);
simens 0:ed3e71232bc7 23 g[0]=*((int16_t*)&buffer[0]);
simens 0:ed3e71232bc7 24 g[1]=*((int16_t*)&buffer[2]);
simens 0:ed3e71232bc7 25 g[2]=*((int16_t*)&buffer[4]);
simens 0:ed3e71232bc7 26 }