Programme complet de bâton de marche sauf capteur cardiaque

Dependencies:   mbed SimpleBLE X_NUCLEO_IDB0XA1 SDFileSystem MBed_Adafruit-GPS-Library Arduino USBDevice

Revision:
0:6e330c197193
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/LSM9DS1_registre.h	Mon Jan 27 12:04:30 2020 +0000
@@ -0,0 +1,164 @@
+// Accelerometer and Gyroscope registers
+#define LSM9DS1XG_ACT_THS           0x04
+#define LSM9DS1XG_ACT_DUR           0x05
+#define LSM9DS1XG_INT_GEN_CFG_XL    0x06
+#define LSM9DS1XG_INT_GEN_THS_X_XL  0x07
+#define LSM9DS1XG_INT_GEN_THS_Y_XL  0x08
+#define LSM9DS1XG_INT_GEN_THS_Z_XL  0x09
+#define LSM9DS1XG_INT_GEN_DUR_XL    0x0A
+#define LSM9DS1XG_REFERENCE_G       0x0B
+#define LSM9DS1XG_INT1_CTRL         0x0C
+#define LSM9DS1XG_INT2_CTRL         0x0D
+#define LSM9DS1XG_WHO_AM_I          0x0F  // should return 0x68
+#define LSM9DS1XG_CTRL_REG1_G       0x10
+#define LSM9DS1XG_CTRL_REG2_G       0x11
+#define LSM9DS1XG_CTRL_REG3_G       0x12
+#define LSM9DS1XG_ORIENT_CFG_G      0x13
+#define LSM9DS1XG_INT_GEN_SRC_G     0x14
+#define LSM9DS1XG_OUT_TEMP_L        0x15
+#define LSM9DS1XG_OUT_TEMP_H        0x16
+#define LSM9DS1XG_STATUS_REG        0x17
+#define LSM9DS1XG_OUT_X_L_G         0x18
+#define LSM9DS1XG_OUT_X_H_G         0x19
+#define LSM9DS1XG_OUT_Y_L_G         0x1A
+#define LSM9DS1XG_OUT_Y_H_G         0x1B
+#define LSM9DS1XG_OUT_Z_L_G         0x1C
+#define LSM9DS1XG_OUT_Z_H_G         0x1D
+#define LSM9DS1XG_CTRL_REG4         0x1E
+#define LSM9DS1XG_CTRL_REG5_XL      0x1F
+#define LSM9DS1XG_CTRL_REG6_XL      0x20
+#define LSM9DS1XG_CTRL_REG7_XL      0x21
+#define LSM9DS1XG_CTRL_REG8         0x22
+#define LSM9DS1XG_CTRL_REG9         0x23
+#define LSM9DS1XG_CTRL_REG10        0x24
+#define LSM9DS1XG_INT_GEN_SRC_XL    0x26
+//#define LSM9DS1XG_STATUS_REG        0x27 // duplicate of 0x17!
+#define LSM9DS1XG_OUT_X_L_XL        0x28
+#define LSM9DS1XG_OUT_X_H_XL        0x29
+#define LSM9DS1XG_OUT_Y_L_XL        0x2A
+#define LSM9DS1XG_OUT_Y_H_XL        0x2B
+#define LSM9DS1XG_OUT_Z_L_XL        0x2C
+#define LSM9DS1XG_OUT_Z_H_XL        0x2D
+#define LSM9DS1XG_FIFO_CTRL         0x2E
+#define LSM9DS1XG_FIFO_SRC          0x2F
+#define LSM9DS1XG_INT_GEN_CFG_G     0x30
+#define LSM9DS1XG_INT_GEN_THS_XH_G  0x31
+#define LSM9DS1XG_INT_GEN_THS_XL_G  0x32
+#define LSM9DS1XG_INT_GEN_THS_YH_G  0x33
+#define LSM9DS1XG_INT_GEN_THS_YL_G  0x34
+#define LSM9DS1XG_INT_GEN_THS_ZH_G  0x35
+#define LSM9DS1XG_INT_GEN_THS_ZL_G  0x36
+#define LSM9DS1XG_INT_GEN_DUR_G     0x37
+//
+// Magnetometer registers
+#define LSM9DS1M_OFFSET_X_REG_L_M   0x05
+#define LSM9DS1M_OFFSET_X_REG_H_M   0x06
+#define LSM9DS1M_OFFSET_Y_REG_L_M   0x07
+#define LSM9DS1M_OFFSET_Y_REG_H_M   0x08
+#define LSM9DS1M_OFFSET_Z_REG_L_M   0x09
+#define LSM9DS1M_OFFSET_Z_REG_H_M   0x0A
+#define LSM9DS1M_WHO_AM_I           0x0F
+#define LSM9DS1M_CTRL_REG1_M        0x20
+#define LSM9DS1M_CTRL_REG2_M        0x21
+#define LSM9DS1M_CTRL_REG3_M        0x22
+#define LSM9DS1M_CTRL_REG4_M        0x23
+#define LSM9DS1M_CTRL_REG5_M        0x24
+#define LSM9DS1M_STATUS_REG_M       0x27
+#define LSM9DS1M_OUT_X_L_M          0x28
+#define LSM9DS1M_OUT_X_H_M          0x29
+#define LSM9DS1M_OUT_Y_L_M          0x2A
+#define LSM9DS1M_OUT_Y_H_M          0x2B
+#define LSM9DS1M_OUT_Z_L_M          0x2C
+#define LSM9DS1M_OUT_Z_H_M          0x2D
+#define LSM9DS1M_INT_CFG_M          0x30
+#define LSM9DS1M_INT_SRC_M          0x31
+#define LSM9DS1M_INT_THS_L_M        0x32
+#define LSM9DS1M_INT_THS_H_M        0x33
+
+// Using the LSM9DS1+MS5611 Teensy 3.1 Add-On shield, ADO is set to 1
+// Seven-bit device address of accel/gyro is 110101 for ADO = 0 and 110101 for ADO = 1
+
+#define LSM9DS1XG_ADDRESS 0xD4  //  Device address when ADO = 1
+#define LSM9DS1M_ADDRESS  0x38  //  Address of magnetometer
+#define SerialDebug true  // set to true to get Serial output for debugging
+
+
+
+
+
+
+// Set initial input parameters
+enum Ascale {
+    // set of allowable accel full scale settings
+    AFS_2G = 0,
+    AFS_16G,
+    AFS_4G,
+    AFS_8G
+};
+
+enum Aodr {  // set of allowable gyro sample rates
+    AODR_PowerDown = 0,
+    AODR_10Hz,
+    AODR_50Hz,
+    AODR_119Hz,
+    AODR_238Hz,
+    AODR_476Hz,
+    AODR_952Hz
+};
+
+enum Abw {  // set of allowable accewl bandwidths
+    ABW_408Hz = 0,
+    ABW_211Hz,
+    ABW_105Hz,
+    ABW_50Hz
+};
+
+enum Gscale {  // set of allowable gyro full scale settings
+    GFS_245DPS = 0,
+    GFS_500DPS,
+    GFS_NoOp,
+    GFS_2000DPS
+};
+
+enum Godr {  // set of allowable gyro sample rates
+    GODR_PowerDown = 0,
+    GODR_14_9Hz,
+    GODR_59_5Hz,
+    GODR_119Hz,
+    GODR_238Hz,
+    GODR_476Hz,
+    GODR_952Hz
+};
+
+enum Gbw {   // set of allowable gyro data bandwidths
+    GBW_low = 0,  // 14 Hz at Godr = 238 Hz,  33 Hz at Godr = 952 Hz
+    GBW_med,      // 29 Hz at Godr = 238 Hz,  40 Hz at Godr = 952 Hz
+    GBW_high,     // 63 Hz at Godr = 238 Hz,  58 Hz at Godr = 952 Hz
+    GBW_highest   // 78 Hz at Godr = 238 Hz, 100 Hz at Godr = 952 Hz
+};
+
+enum Mscale {  // set of allowable mag full scale settings
+    MFS_4G = 0,
+    MFS_8G,
+    MFS_12G,
+    MFS_16G
+};
+
+enum Mmode {
+    MMode_LowPower = 0,
+    MMode_MedPerformance,
+    MMode_HighPerformance,
+    MMode_UltraHighPerformance
+};
+
+enum Modr {  // set of allowable mag sample rates
+    MODR_0_625Hz = 0,
+    MODR_1_25Hz,
+    MODR_2_5Hz,
+    MODR_5Hz,
+    MODR_10Hz,
+    MODR_20Hz,
+    MODR_80Hz
+};
+
+#define PI  3.141592653589793238463
\ No newline at end of file