library for MPU6050 and MPU9250, supports both I2C and SPI

Dependents:   Seeed_nRF51822_MPU9250

Committer:
yihui
Date:
Thu Dec 10 07:39:48 2015 +0000
Revision:
0:972f3778c19c
initial

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yihui 0:972f3778c19c 1 /*
yihui 0:972f3778c19c 2 $License:
yihui 0:972f3778c19c 3 Copyright (C) 2011 InvenSense Corporation, All Rights Reserved.
yihui 0:972f3778c19c 4 $
yihui 0:972f3778c19c 5 */
yihui 0:972f3778c19c 6 #ifndef DMPKEY_H__
yihui 0:972f3778c19c 7 #define DMPKEY_H__
yihui 0:972f3778c19c 8
yihui 0:972f3778c19c 9 #define KEY_CFG_25 (0)
yihui 0:972f3778c19c 10 #define KEY_CFG_24 (KEY_CFG_25 + 1)
yihui 0:972f3778c19c 11 #define KEY_CFG_26 (KEY_CFG_24 + 1)
yihui 0:972f3778c19c 12 #define KEY_CFG_27 (KEY_CFG_26 + 1)
yihui 0:972f3778c19c 13 #define KEY_CFG_21 (KEY_CFG_27 + 1)
yihui 0:972f3778c19c 14 #define KEY_CFG_20 (KEY_CFG_21 + 1)
yihui 0:972f3778c19c 15 #define KEY_CFG_TAP4 (KEY_CFG_20 + 1)
yihui 0:972f3778c19c 16 #define KEY_CFG_TAP5 (KEY_CFG_TAP4 + 1)
yihui 0:972f3778c19c 17 #define KEY_CFG_TAP6 (KEY_CFG_TAP5 + 1)
yihui 0:972f3778c19c 18 #define KEY_CFG_TAP7 (KEY_CFG_TAP6 + 1)
yihui 0:972f3778c19c 19 #define KEY_CFG_TAP0 (KEY_CFG_TAP7 + 1)
yihui 0:972f3778c19c 20 #define KEY_CFG_TAP1 (KEY_CFG_TAP0 + 1)
yihui 0:972f3778c19c 21 #define KEY_CFG_TAP2 (KEY_CFG_TAP1 + 1)
yihui 0:972f3778c19c 22 #define KEY_CFG_TAP3 (KEY_CFG_TAP2 + 1)
yihui 0:972f3778c19c 23 #define KEY_CFG_TAP_QUANTIZE (KEY_CFG_TAP3 + 1)
yihui 0:972f3778c19c 24 #define KEY_CFG_TAP_JERK (KEY_CFG_TAP_QUANTIZE + 1)
yihui 0:972f3778c19c 25 #define KEY_CFG_DR_INT (KEY_CFG_TAP_JERK + 1)
yihui 0:972f3778c19c 26 #define KEY_CFG_AUTH (KEY_CFG_DR_INT + 1)
yihui 0:972f3778c19c 27 #define KEY_CFG_TAP_SAVE_ACCB (KEY_CFG_AUTH + 1)
yihui 0:972f3778c19c 28 #define KEY_CFG_TAP_CLEAR_STICKY (KEY_CFG_TAP_SAVE_ACCB + 1)
yihui 0:972f3778c19c 29 #define KEY_CFG_FIFO_ON_EVENT (KEY_CFG_TAP_CLEAR_STICKY + 1)
yihui 0:972f3778c19c 30 #define KEY_FCFG_ACCEL_INPUT (KEY_CFG_FIFO_ON_EVENT + 1)
yihui 0:972f3778c19c 31 #define KEY_FCFG_ACCEL_INIT (KEY_FCFG_ACCEL_INPUT + 1)
yihui 0:972f3778c19c 32 #define KEY_CFG_23 (KEY_FCFG_ACCEL_INIT + 1)
yihui 0:972f3778c19c 33 #define KEY_FCFG_1 (KEY_CFG_23 + 1)
yihui 0:972f3778c19c 34 #define KEY_FCFG_3 (KEY_FCFG_1 + 1)
yihui 0:972f3778c19c 35 #define KEY_FCFG_2 (KEY_FCFG_3 + 1)
yihui 0:972f3778c19c 36 #define KEY_CFG_3D (KEY_FCFG_2 + 1)
yihui 0:972f3778c19c 37 #define KEY_CFG_3B (KEY_CFG_3D + 1)
yihui 0:972f3778c19c 38 #define KEY_CFG_3C (KEY_CFG_3B + 1)
yihui 0:972f3778c19c 39 #define KEY_FCFG_5 (KEY_CFG_3C + 1)
yihui 0:972f3778c19c 40 #define KEY_FCFG_4 (KEY_FCFG_5 + 1)
yihui 0:972f3778c19c 41 #define KEY_FCFG_7 (KEY_FCFG_4 + 1)
yihui 0:972f3778c19c 42 #define KEY_FCFG_FSCALE (KEY_FCFG_7 + 1)
yihui 0:972f3778c19c 43 #define KEY_FCFG_AZ (KEY_FCFG_FSCALE + 1)
yihui 0:972f3778c19c 44 #define KEY_FCFG_6 (KEY_FCFG_AZ + 1)
yihui 0:972f3778c19c 45 #define KEY_FCFG_LSB4 (KEY_FCFG_6 + 1)
yihui 0:972f3778c19c 46 #define KEY_CFG_12 (KEY_FCFG_LSB4 + 1)
yihui 0:972f3778c19c 47 #define KEY_CFG_14 (KEY_CFG_12 + 1)
yihui 0:972f3778c19c 48 #define KEY_CFG_15 (KEY_CFG_14 + 1)
yihui 0:972f3778c19c 49 #define KEY_CFG_16 (KEY_CFG_15 + 1)
yihui 0:972f3778c19c 50 #define KEY_CFG_18 (KEY_CFG_16 + 1)
yihui 0:972f3778c19c 51 #define KEY_CFG_6 (KEY_CFG_18 + 1)
yihui 0:972f3778c19c 52 #define KEY_CFG_7 (KEY_CFG_6 + 1)
yihui 0:972f3778c19c 53 #define KEY_CFG_4 (KEY_CFG_7 + 1)
yihui 0:972f3778c19c 54 #define KEY_CFG_5 (KEY_CFG_4 + 1)
yihui 0:972f3778c19c 55 #define KEY_CFG_2 (KEY_CFG_5 + 1)
yihui 0:972f3778c19c 56 #define KEY_CFG_3 (KEY_CFG_2 + 1)
yihui 0:972f3778c19c 57 #define KEY_CFG_1 (KEY_CFG_3 + 1)
yihui 0:972f3778c19c 58 #define KEY_CFG_EXTERNAL (KEY_CFG_1 + 1)
yihui 0:972f3778c19c 59 #define KEY_CFG_8 (KEY_CFG_EXTERNAL + 1)
yihui 0:972f3778c19c 60 #define KEY_CFG_9 (KEY_CFG_8 + 1)
yihui 0:972f3778c19c 61 #define KEY_CFG_ORIENT_3 (KEY_CFG_9 + 1)
yihui 0:972f3778c19c 62 #define KEY_CFG_ORIENT_2 (KEY_CFG_ORIENT_3 + 1)
yihui 0:972f3778c19c 63 #define KEY_CFG_ORIENT_1 (KEY_CFG_ORIENT_2 + 1)
yihui 0:972f3778c19c 64 #define KEY_CFG_GYRO_SOURCE (KEY_CFG_ORIENT_1 + 1)
yihui 0:972f3778c19c 65 #define KEY_CFG_ORIENT_IRQ_1 (KEY_CFG_GYRO_SOURCE + 1)
yihui 0:972f3778c19c 66 #define KEY_CFG_ORIENT_IRQ_2 (KEY_CFG_ORIENT_IRQ_1 + 1)
yihui 0:972f3778c19c 67 #define KEY_CFG_ORIENT_IRQ_3 (KEY_CFG_ORIENT_IRQ_2 + 1)
yihui 0:972f3778c19c 68 #define KEY_FCFG_MAG_VAL (KEY_CFG_ORIENT_IRQ_3 + 1)
yihui 0:972f3778c19c 69 #define KEY_FCFG_MAG_MOV (KEY_FCFG_MAG_VAL + 1)
yihui 0:972f3778c19c 70 #define KEY_CFG_LP_QUAT (KEY_FCFG_MAG_MOV + 1)
yihui 0:972f3778c19c 71
yihui 0:972f3778c19c 72 /* MPU6050 keys */
yihui 0:972f3778c19c 73 #define KEY_CFG_ACCEL_FILTER (KEY_CFG_LP_QUAT + 1)
yihui 0:972f3778c19c 74 #define KEY_CFG_MOTION_BIAS (KEY_CFG_ACCEL_FILTER + 1)
yihui 0:972f3778c19c 75 #define KEY_TEMPLABEL (KEY_CFG_MOTION_BIAS + 1)
yihui 0:972f3778c19c 76
yihui 0:972f3778c19c 77 #define KEY_D_0_22 (KEY_TEMPLABEL + 1)
yihui 0:972f3778c19c 78 #define KEY_D_0_24 (KEY_D_0_22 + 1)
yihui 0:972f3778c19c 79 #define KEY_D_0_36 (KEY_D_0_24 + 1)
yihui 0:972f3778c19c 80 #define KEY_D_0_52 (KEY_D_0_36 + 1)
yihui 0:972f3778c19c 81 #define KEY_D_0_96 (KEY_D_0_52 + 1)
yihui 0:972f3778c19c 82 #define KEY_D_0_104 (KEY_D_0_96 + 1)
yihui 0:972f3778c19c 83 #define KEY_D_0_108 (KEY_D_0_104 + 1)
yihui 0:972f3778c19c 84 #define KEY_D_0_163 (KEY_D_0_108 + 1)
yihui 0:972f3778c19c 85 #define KEY_D_0_188 (KEY_D_0_163 + 1)
yihui 0:972f3778c19c 86 #define KEY_D_0_192 (KEY_D_0_188 + 1)
yihui 0:972f3778c19c 87 #define KEY_D_0_224 (KEY_D_0_192 + 1)
yihui 0:972f3778c19c 88 #define KEY_D_0_228 (KEY_D_0_224 + 1)
yihui 0:972f3778c19c 89 #define KEY_D_0_232 (KEY_D_0_228 + 1)
yihui 0:972f3778c19c 90 #define KEY_D_0_236 (KEY_D_0_232 + 1)
yihui 0:972f3778c19c 91
yihui 0:972f3778c19c 92 #define KEY_DMP_PREVPTAT (KEY_D_0_236 + 1)
yihui 0:972f3778c19c 93 #define KEY_D_1_2 (KEY_DMP_PREVPTAT + 1)
yihui 0:972f3778c19c 94 #define KEY_D_1_4 (KEY_D_1_2 + 1)
yihui 0:972f3778c19c 95 #define KEY_D_1_8 (KEY_D_1_4 + 1)
yihui 0:972f3778c19c 96 #define KEY_D_1_10 (KEY_D_1_8 + 1)
yihui 0:972f3778c19c 97 #define KEY_D_1_24 (KEY_D_1_10 + 1)
yihui 0:972f3778c19c 98 #define KEY_D_1_28 (KEY_D_1_24 + 1)
yihui 0:972f3778c19c 99 #define KEY_D_1_36 (KEY_D_1_28 + 1)
yihui 0:972f3778c19c 100 #define KEY_D_1_40 (KEY_D_1_36 + 1)
yihui 0:972f3778c19c 101 #define KEY_D_1_44 (KEY_D_1_40 + 1)
yihui 0:972f3778c19c 102 #define KEY_D_1_72 (KEY_D_1_44 + 1)
yihui 0:972f3778c19c 103 #define KEY_D_1_74 (KEY_D_1_72 + 1)
yihui 0:972f3778c19c 104 #define KEY_D_1_79 (KEY_D_1_74 + 1)
yihui 0:972f3778c19c 105 #define KEY_D_1_88 (KEY_D_1_79 + 1)
yihui 0:972f3778c19c 106 #define KEY_D_1_90 (KEY_D_1_88 + 1)
yihui 0:972f3778c19c 107 #define KEY_D_1_92 (KEY_D_1_90 + 1)
yihui 0:972f3778c19c 108 #define KEY_D_1_96 (KEY_D_1_92 + 1)
yihui 0:972f3778c19c 109 #define KEY_D_1_98 (KEY_D_1_96 + 1)
yihui 0:972f3778c19c 110 #define KEY_D_1_100 (KEY_D_1_98 + 1)
yihui 0:972f3778c19c 111 #define KEY_D_1_106 (KEY_D_1_100 + 1)
yihui 0:972f3778c19c 112 #define KEY_D_1_108 (KEY_D_1_106 + 1)
yihui 0:972f3778c19c 113 #define KEY_D_1_112 (KEY_D_1_108 + 1)
yihui 0:972f3778c19c 114 #define KEY_D_1_128 (KEY_D_1_112 + 1)
yihui 0:972f3778c19c 115 #define KEY_D_1_152 (KEY_D_1_128 + 1)
yihui 0:972f3778c19c 116 #define KEY_D_1_160 (KEY_D_1_152 + 1)
yihui 0:972f3778c19c 117 #define KEY_D_1_168 (KEY_D_1_160 + 1)
yihui 0:972f3778c19c 118 #define KEY_D_1_175 (KEY_D_1_168 + 1)
yihui 0:972f3778c19c 119 #define KEY_D_1_176 (KEY_D_1_175 + 1)
yihui 0:972f3778c19c 120 #define KEY_D_1_178 (KEY_D_1_176 + 1)
yihui 0:972f3778c19c 121 #define KEY_D_1_179 (KEY_D_1_178 + 1)
yihui 0:972f3778c19c 122 #define KEY_D_1_218 (KEY_D_1_179 + 1)
yihui 0:972f3778c19c 123 #define KEY_D_1_232 (KEY_D_1_218 + 1)
yihui 0:972f3778c19c 124 #define KEY_D_1_236 (KEY_D_1_232 + 1)
yihui 0:972f3778c19c 125 #define KEY_D_1_240 (KEY_D_1_236 + 1)
yihui 0:972f3778c19c 126 #define KEY_D_1_244 (KEY_D_1_240 + 1)
yihui 0:972f3778c19c 127 #define KEY_D_1_250 (KEY_D_1_244 + 1)
yihui 0:972f3778c19c 128 #define KEY_D_1_252 (KEY_D_1_250 + 1)
yihui 0:972f3778c19c 129 #define KEY_D_2_12 (KEY_D_1_252 + 1)
yihui 0:972f3778c19c 130 #define KEY_D_2_96 (KEY_D_2_12 + 1)
yihui 0:972f3778c19c 131 #define KEY_D_2_108 (KEY_D_2_96 + 1)
yihui 0:972f3778c19c 132 #define KEY_D_2_208 (KEY_D_2_108 + 1)
yihui 0:972f3778c19c 133 #define KEY_FLICK_MSG (KEY_D_2_208 + 1)
yihui 0:972f3778c19c 134 #define KEY_FLICK_COUNTER (KEY_FLICK_MSG + 1)
yihui 0:972f3778c19c 135 #define KEY_FLICK_LOWER (KEY_FLICK_COUNTER + 1)
yihui 0:972f3778c19c 136 #define KEY_CFG_FLICK_IN (KEY_FLICK_LOWER + 1)
yihui 0:972f3778c19c 137 #define KEY_FLICK_UPPER (KEY_CFG_FLICK_IN + 1)
yihui 0:972f3778c19c 138 #define KEY_CGNOTICE_INTR (KEY_FLICK_UPPER + 1)
yihui 0:972f3778c19c 139 #define KEY_D_2_224 (KEY_CGNOTICE_INTR + 1)
yihui 0:972f3778c19c 140 #define KEY_D_2_244 (KEY_D_2_224 + 1)
yihui 0:972f3778c19c 141 #define KEY_D_2_248 (KEY_D_2_244 + 1)
yihui 0:972f3778c19c 142 #define KEY_D_2_252 (KEY_D_2_248 + 1)
yihui 0:972f3778c19c 143
yihui 0:972f3778c19c 144 #define KEY_D_GYRO_BIAS_X (KEY_D_2_252 + 1)
yihui 0:972f3778c19c 145 #define KEY_D_GYRO_BIAS_Y (KEY_D_GYRO_BIAS_X + 1)
yihui 0:972f3778c19c 146 #define KEY_D_GYRO_BIAS_Z (KEY_D_GYRO_BIAS_Y + 1)
yihui 0:972f3778c19c 147 #define KEY_D_ACC_BIAS_X (KEY_D_GYRO_BIAS_Z + 1)
yihui 0:972f3778c19c 148 #define KEY_D_ACC_BIAS_Y (KEY_D_ACC_BIAS_X + 1)
yihui 0:972f3778c19c 149 #define KEY_D_ACC_BIAS_Z (KEY_D_ACC_BIAS_Y + 1)
yihui 0:972f3778c19c 150 #define KEY_D_GYRO_ENABLE (KEY_D_ACC_BIAS_Z + 1)
yihui 0:972f3778c19c 151 #define KEY_D_ACCEL_ENABLE (KEY_D_GYRO_ENABLE + 1)
yihui 0:972f3778c19c 152 #define KEY_D_QUAT_ENABLE (KEY_D_ACCEL_ENABLE +1)
yihui 0:972f3778c19c 153 #define KEY_D_OUTPUT_ENABLE (KEY_D_QUAT_ENABLE + 1)
yihui 0:972f3778c19c 154 #define KEY_D_CR_TIME_G (KEY_D_OUTPUT_ENABLE + 1)
yihui 0:972f3778c19c 155 #define KEY_D_CR_TIME_A (KEY_D_CR_TIME_G + 1)
yihui 0:972f3778c19c 156 #define KEY_D_CR_TIME_Q (KEY_D_CR_TIME_A + 1)
yihui 0:972f3778c19c 157 #define KEY_D_CS_TAX (KEY_D_CR_TIME_Q + 1)
yihui 0:972f3778c19c 158 #define KEY_D_CS_TAY (KEY_D_CS_TAX + 1)
yihui 0:972f3778c19c 159 #define KEY_D_CS_TAZ (KEY_D_CS_TAY + 1)
yihui 0:972f3778c19c 160 #define KEY_D_CS_TGX (KEY_D_CS_TAZ + 1)
yihui 0:972f3778c19c 161 #define KEY_D_CS_TGY (KEY_D_CS_TGX + 1)
yihui 0:972f3778c19c 162 #define KEY_D_CS_TGZ (KEY_D_CS_TGY + 1)
yihui 0:972f3778c19c 163 #define KEY_D_CS_TQ0 (KEY_D_CS_TGZ + 1)
yihui 0:972f3778c19c 164 #define KEY_D_CS_TQ1 (KEY_D_CS_TQ0 + 1)
yihui 0:972f3778c19c 165 #define KEY_D_CS_TQ2 (KEY_D_CS_TQ1 + 1)
yihui 0:972f3778c19c 166 #define KEY_D_CS_TQ3 (KEY_D_CS_TQ2 + 1)
yihui 0:972f3778c19c 167
yihui 0:972f3778c19c 168 /* Compass keys */
yihui 0:972f3778c19c 169 #define KEY_CPASS_BIAS_X (KEY_D_CS_TQ3 + 1)
yihui 0:972f3778c19c 170 #define KEY_CPASS_BIAS_Y (KEY_CPASS_BIAS_X + 1)
yihui 0:972f3778c19c 171 #define KEY_CPASS_BIAS_Z (KEY_CPASS_BIAS_Y + 1)
yihui 0:972f3778c19c 172 #define KEY_CPASS_MTX_00 (KEY_CPASS_BIAS_Z + 1)
yihui 0:972f3778c19c 173 #define KEY_CPASS_MTX_01 (KEY_CPASS_MTX_00 + 1)
yihui 0:972f3778c19c 174 #define KEY_CPASS_MTX_02 (KEY_CPASS_MTX_01 + 1)
yihui 0:972f3778c19c 175 #define KEY_CPASS_MTX_10 (KEY_CPASS_MTX_02 + 1)
yihui 0:972f3778c19c 176 #define KEY_CPASS_MTX_11 (KEY_CPASS_MTX_10 + 1)
yihui 0:972f3778c19c 177 #define KEY_CPASS_MTX_12 (KEY_CPASS_MTX_11 + 1)
yihui 0:972f3778c19c 178 #define KEY_CPASS_MTX_20 (KEY_CPASS_MTX_12 + 1)
yihui 0:972f3778c19c 179 #define KEY_CPASS_MTX_21 (KEY_CPASS_MTX_20 + 1)
yihui 0:972f3778c19c 180 #define KEY_CPASS_MTX_22 (KEY_CPASS_MTX_21 + 1)
yihui 0:972f3778c19c 181
yihui 0:972f3778c19c 182 /* Gesture Keys */
yihui 0:972f3778c19c 183 #define KEY_DMP_TAPW_MIN (KEY_CPASS_MTX_22 + 1)
yihui 0:972f3778c19c 184 #define KEY_DMP_TAP_THR_X (KEY_DMP_TAPW_MIN + 1)
yihui 0:972f3778c19c 185 #define KEY_DMP_TAP_THR_Y (KEY_DMP_TAP_THR_X + 1)
yihui 0:972f3778c19c 186 #define KEY_DMP_TAP_THR_Z (KEY_DMP_TAP_THR_Y + 1)
yihui 0:972f3778c19c 187 #define KEY_DMP_SH_TH_Y (KEY_DMP_TAP_THR_Z + 1)
yihui 0:972f3778c19c 188 #define KEY_DMP_SH_TH_X (KEY_DMP_SH_TH_Y + 1)
yihui 0:972f3778c19c 189 #define KEY_DMP_SH_TH_Z (KEY_DMP_SH_TH_X + 1)
yihui 0:972f3778c19c 190 #define KEY_DMP_ORIENT (KEY_DMP_SH_TH_Z + 1)
yihui 0:972f3778c19c 191 #define KEY_D_ACT0 (KEY_DMP_ORIENT + 1)
yihui 0:972f3778c19c 192 #define KEY_D_ACSX (KEY_D_ACT0 + 1)
yihui 0:972f3778c19c 193 #define KEY_D_ACSY (KEY_D_ACSX + 1)
yihui 0:972f3778c19c 194 #define KEY_D_ACSZ (KEY_D_ACSY + 1)
yihui 0:972f3778c19c 195
yihui 0:972f3778c19c 196 #define KEY_X_GRT_Y_TMP (KEY_D_ACSZ + 1)
yihui 0:972f3778c19c 197 #define KEY_SKIP_X_GRT_Y_TMP (KEY_X_GRT_Y_TMP + 1)
yihui 0:972f3778c19c 198 #define KEY_SKIP_END_COMPARE (KEY_SKIP_X_GRT_Y_TMP + 1)
yihui 0:972f3778c19c 199 #define KEY_END_COMPARE_Y_X_TMP2 (KEY_SKIP_END_COMPARE + 1)
yihui 0:972f3778c19c 200 #define KEY_CFG_ANDROID_ORIENT_INT (KEY_END_COMPARE_Y_X_TMP2 + 1)
yihui 0:972f3778c19c 201 #define KEY_NO_ORIENT_INTERRUPT (KEY_CFG_ANDROID_ORIENT_INT + 1)
yihui 0:972f3778c19c 202 #define KEY_END_COMPARE_Y_X_TMP (KEY_NO_ORIENT_INTERRUPT + 1)
yihui 0:972f3778c19c 203 #define KEY_END_ORIENT_1 (KEY_END_COMPARE_Y_X_TMP + 1)
yihui 0:972f3778c19c 204 #define KEY_END_COMPARE_Y_X (KEY_END_ORIENT_1 + 1)
yihui 0:972f3778c19c 205 #define KEY_END_ORIENT (KEY_END_COMPARE_Y_X + 1)
yihui 0:972f3778c19c 206 #define KEY_X_GRT_Y (KEY_END_ORIENT + 1)
yihui 0:972f3778c19c 207 #define KEY_NOT_TIME_MINUS_1 (KEY_X_GRT_Y + 1)
yihui 0:972f3778c19c 208 #define KEY_END_COMPARE_Y_X_TMP3 (KEY_NOT_TIME_MINUS_1 + 1)
yihui 0:972f3778c19c 209 #define KEY_X_GRT_Y_TMP2 (KEY_END_COMPARE_Y_X_TMP3 + 1)
yihui 0:972f3778c19c 210
yihui 0:972f3778c19c 211 /* Authenticate Keys */
yihui 0:972f3778c19c 212 #define KEY_D_AUTH_OUT (KEY_X_GRT_Y_TMP2 + 1)
yihui 0:972f3778c19c 213 #define KEY_D_AUTH_IN (KEY_D_AUTH_OUT + 1)
yihui 0:972f3778c19c 214 #define KEY_D_AUTH_A (KEY_D_AUTH_IN + 1)
yihui 0:972f3778c19c 215 #define KEY_D_AUTH_B (KEY_D_AUTH_A + 1)
yihui 0:972f3778c19c 216
yihui 0:972f3778c19c 217 /* Pedometer standalone only keys */
yihui 0:972f3778c19c 218 #define KEY_D_PEDSTD_BP_B (KEY_D_AUTH_B + 1)
yihui 0:972f3778c19c 219 #define KEY_D_PEDSTD_HP_A (KEY_D_PEDSTD_BP_B + 1)
yihui 0:972f3778c19c 220 #define KEY_D_PEDSTD_HP_B (KEY_D_PEDSTD_HP_A + 1)
yihui 0:972f3778c19c 221 #define KEY_D_PEDSTD_BP_A4 (KEY_D_PEDSTD_HP_B + 1)
yihui 0:972f3778c19c 222 #define KEY_D_PEDSTD_BP_A3 (KEY_D_PEDSTD_BP_A4 + 1)
yihui 0:972f3778c19c 223 #define KEY_D_PEDSTD_BP_A2 (KEY_D_PEDSTD_BP_A3 + 1)
yihui 0:972f3778c19c 224 #define KEY_D_PEDSTD_BP_A1 (KEY_D_PEDSTD_BP_A2 + 1)
yihui 0:972f3778c19c 225 #define KEY_D_PEDSTD_INT_THRSH (KEY_D_PEDSTD_BP_A1 + 1)
yihui 0:972f3778c19c 226 #define KEY_D_PEDSTD_CLIP (KEY_D_PEDSTD_INT_THRSH + 1)
yihui 0:972f3778c19c 227 #define KEY_D_PEDSTD_SB (KEY_D_PEDSTD_CLIP + 1)
yihui 0:972f3778c19c 228 #define KEY_D_PEDSTD_SB_TIME (KEY_D_PEDSTD_SB + 1)
yihui 0:972f3778c19c 229 #define KEY_D_PEDSTD_PEAKTHRSH (KEY_D_PEDSTD_SB_TIME + 1)
yihui 0:972f3778c19c 230 #define KEY_D_PEDSTD_TIML (KEY_D_PEDSTD_PEAKTHRSH + 1)
yihui 0:972f3778c19c 231 #define KEY_D_PEDSTD_TIMH (KEY_D_PEDSTD_TIML + 1)
yihui 0:972f3778c19c 232 #define KEY_D_PEDSTD_PEAK (KEY_D_PEDSTD_TIMH + 1)
yihui 0:972f3778c19c 233 #define KEY_D_PEDSTD_TIMECTR (KEY_D_PEDSTD_PEAK + 1)
yihui 0:972f3778c19c 234 #define KEY_D_PEDSTD_STEPCTR (KEY_D_PEDSTD_TIMECTR + 1)
yihui 0:972f3778c19c 235 #define KEY_D_PEDSTD_WALKTIME (KEY_D_PEDSTD_STEPCTR + 1)
yihui 0:972f3778c19c 236 #define KEY_D_PEDSTD_DECI (KEY_D_PEDSTD_WALKTIME + 1)
yihui 0:972f3778c19c 237
yihui 0:972f3778c19c 238 /*Host Based No Motion*/
yihui 0:972f3778c19c 239 #define KEY_D_HOST_NO_MOT (KEY_D_PEDSTD_DECI + 1)
yihui 0:972f3778c19c 240
yihui 0:972f3778c19c 241 /* EIS keys */
yihui 0:972f3778c19c 242 #define KEY_P_EIS_FIFO_FOOTER (KEY_D_HOST_NO_MOT + 1)
yihui 0:972f3778c19c 243 #define KEY_P_EIS_FIFO_YSHIFT (KEY_P_EIS_FIFO_FOOTER + 1)
yihui 0:972f3778c19c 244 #define KEY_P_EIS_DATA_RATE (KEY_P_EIS_FIFO_YSHIFT + 1)
yihui 0:972f3778c19c 245 #define KEY_P_EIS_FIFO_XSHIFT (KEY_P_EIS_DATA_RATE + 1)
yihui 0:972f3778c19c 246 #define KEY_P_EIS_FIFO_SYNC (KEY_P_EIS_FIFO_XSHIFT + 1)
yihui 0:972f3778c19c 247 #define KEY_P_EIS_FIFO_ZSHIFT (KEY_P_EIS_FIFO_SYNC + 1)
yihui 0:972f3778c19c 248 #define KEY_P_EIS_FIFO_READY (KEY_P_EIS_FIFO_ZSHIFT + 1)
yihui 0:972f3778c19c 249 #define KEY_DMP_FOOTER (KEY_P_EIS_FIFO_READY + 1)
yihui 0:972f3778c19c 250 #define KEY_DMP_INTX_HC (KEY_DMP_FOOTER + 1)
yihui 0:972f3778c19c 251 #define KEY_DMP_INTX_PH (KEY_DMP_INTX_HC + 1)
yihui 0:972f3778c19c 252 #define KEY_DMP_INTX_SH (KEY_DMP_INTX_PH + 1)
yihui 0:972f3778c19c 253 #define KEY_DMP_AINV_SH (KEY_DMP_INTX_SH + 1)
yihui 0:972f3778c19c 254 #define KEY_DMP_A_INV_XH (KEY_DMP_AINV_SH + 1)
yihui 0:972f3778c19c 255 #define KEY_DMP_AINV_PH (KEY_DMP_A_INV_XH + 1)
yihui 0:972f3778c19c 256 #define KEY_DMP_CTHX_H (KEY_DMP_AINV_PH + 1)
yihui 0:972f3778c19c 257 #define KEY_DMP_CTHY_H (KEY_DMP_CTHX_H + 1)
yihui 0:972f3778c19c 258 #define KEY_DMP_CTHZ_H (KEY_DMP_CTHY_H + 1)
yihui 0:972f3778c19c 259 #define KEY_DMP_NCTHX_H (KEY_DMP_CTHZ_H + 1)
yihui 0:972f3778c19c 260 #define KEY_DMP_NCTHY_H (KEY_DMP_NCTHX_H + 1)
yihui 0:972f3778c19c 261 #define KEY_DMP_NCTHZ_H (KEY_DMP_NCTHY_H + 1)
yihui 0:972f3778c19c 262 #define KEY_DMP_CTSQ_XH (KEY_DMP_NCTHZ_H + 1)
yihui 0:972f3778c19c 263 #define KEY_DMP_CTSQ_YH (KEY_DMP_CTSQ_XH + 1)
yihui 0:972f3778c19c 264 #define KEY_DMP_CTSQ_ZH (KEY_DMP_CTSQ_YH + 1)
yihui 0:972f3778c19c 265 #define KEY_DMP_INTX_H (KEY_DMP_CTSQ_ZH + 1)
yihui 0:972f3778c19c 266 #define KEY_DMP_INTY_H (KEY_DMP_INTX_H + 1)
yihui 0:972f3778c19c 267 #define KEY_DMP_INTZ_H (KEY_DMP_INTY_H + 1)
yihui 0:972f3778c19c 268 //#define KEY_DMP_HPX_H (KEY_DMP_INTZ_H + 1)
yihui 0:972f3778c19c 269 //#define KEY_DMP_HPY_H (KEY_DMP_HPX_H + 1)
yihui 0:972f3778c19c 270 //#define KEY_DMP_HPZ_H (KEY_DMP_HPY_H + 1)
yihui 0:972f3778c19c 271
yihui 0:972f3778c19c 272 /* Stream keys */
yihui 0:972f3778c19c 273 #define KEY_STREAM_P_GYRO_Z (KEY_DMP_INTZ_H + 1)
yihui 0:972f3778c19c 274 #define KEY_STREAM_P_GYRO_Y (KEY_STREAM_P_GYRO_Z + 1)
yihui 0:972f3778c19c 275 #define KEY_STREAM_P_GYRO_X (KEY_STREAM_P_GYRO_Y + 1)
yihui 0:972f3778c19c 276 #define KEY_STREAM_P_TEMP (KEY_STREAM_P_GYRO_X + 1)
yihui 0:972f3778c19c 277 #define KEY_STREAM_P_AUX_Y (KEY_STREAM_P_TEMP + 1)
yihui 0:972f3778c19c 278 #define KEY_STREAM_P_AUX_X (KEY_STREAM_P_AUX_Y + 1)
yihui 0:972f3778c19c 279 #define KEY_STREAM_P_AUX_Z (KEY_STREAM_P_AUX_X + 1)
yihui 0:972f3778c19c 280 #define KEY_STREAM_P_ACCEL_Y (KEY_STREAM_P_AUX_Z + 1)
yihui 0:972f3778c19c 281 #define KEY_STREAM_P_ACCEL_X (KEY_STREAM_P_ACCEL_Y + 1)
yihui 0:972f3778c19c 282 #define KEY_STREAM_P_FOOTER (KEY_STREAM_P_ACCEL_X + 1)
yihui 0:972f3778c19c 283 #define KEY_STREAM_P_ACCEL_Z (KEY_STREAM_P_FOOTER + 1)
yihui 0:972f3778c19c 284
yihui 0:972f3778c19c 285 #define NUM_KEYS (KEY_STREAM_P_ACCEL_Z + 1)
yihui 0:972f3778c19c 286
yihui 0:972f3778c19c 287 typedef struct {
yihui 0:972f3778c19c 288 unsigned short key;
yihui 0:972f3778c19c 289 unsigned short addr;
yihui 0:972f3778c19c 290 } tKeyLabel;
yihui 0:972f3778c19c 291
yihui 0:972f3778c19c 292 #define DINA0A 0x0a
yihui 0:972f3778c19c 293 #define DINA22 0x22
yihui 0:972f3778c19c 294 #define DINA42 0x42
yihui 0:972f3778c19c 295 #define DINA5A 0x5a
yihui 0:972f3778c19c 296
yihui 0:972f3778c19c 297 #define DINA06 0x06
yihui 0:972f3778c19c 298 #define DINA0E 0x0e
yihui 0:972f3778c19c 299 #define DINA16 0x16
yihui 0:972f3778c19c 300 #define DINA1E 0x1e
yihui 0:972f3778c19c 301 #define DINA26 0x26
yihui 0:972f3778c19c 302 #define DINA2E 0x2e
yihui 0:972f3778c19c 303 #define DINA36 0x36
yihui 0:972f3778c19c 304 #define DINA3E 0x3e
yihui 0:972f3778c19c 305 #define DINA46 0x46
yihui 0:972f3778c19c 306 #define DINA4E 0x4e
yihui 0:972f3778c19c 307 #define DINA56 0x56
yihui 0:972f3778c19c 308 #define DINA5E 0x5e
yihui 0:972f3778c19c 309 #define DINA66 0x66
yihui 0:972f3778c19c 310 #define DINA6E 0x6e
yihui 0:972f3778c19c 311 #define DINA76 0x76
yihui 0:972f3778c19c 312 #define DINA7E 0x7e
yihui 0:972f3778c19c 313
yihui 0:972f3778c19c 314 #define DINA00 0x00
yihui 0:972f3778c19c 315 #define DINA08 0x08
yihui 0:972f3778c19c 316 #define DINA10 0x10
yihui 0:972f3778c19c 317 #define DINA18 0x18
yihui 0:972f3778c19c 318 #define DINA20 0x20
yihui 0:972f3778c19c 319 #define DINA28 0x28
yihui 0:972f3778c19c 320 #define DINA30 0x30
yihui 0:972f3778c19c 321 #define DINA38 0x38
yihui 0:972f3778c19c 322 #define DINA40 0x40
yihui 0:972f3778c19c 323 #define DINA48 0x48
yihui 0:972f3778c19c 324 #define DINA50 0x50
yihui 0:972f3778c19c 325 #define DINA58 0x58
yihui 0:972f3778c19c 326 #define DINA60 0x60
yihui 0:972f3778c19c 327 #define DINA68 0x68
yihui 0:972f3778c19c 328 #define DINA70 0x70
yihui 0:972f3778c19c 329 #define DINA78 0x78
yihui 0:972f3778c19c 330
yihui 0:972f3778c19c 331 #define DINA04 0x04
yihui 0:972f3778c19c 332 #define DINA0C 0x0c
yihui 0:972f3778c19c 333 #define DINA14 0x14
yihui 0:972f3778c19c 334 #define DINA1C 0x1C
yihui 0:972f3778c19c 335 #define DINA24 0x24
yihui 0:972f3778c19c 336 #define DINA2C 0x2c
yihui 0:972f3778c19c 337 #define DINA34 0x34
yihui 0:972f3778c19c 338 #define DINA3C 0x3c
yihui 0:972f3778c19c 339 #define DINA44 0x44
yihui 0:972f3778c19c 340 #define DINA4C 0x4c
yihui 0:972f3778c19c 341 #define DINA54 0x54
yihui 0:972f3778c19c 342 #define DINA5C 0x5c
yihui 0:972f3778c19c 343 #define DINA64 0x64
yihui 0:972f3778c19c 344 #define DINA6C 0x6c
yihui 0:972f3778c19c 345 #define DINA74 0x74
yihui 0:972f3778c19c 346 #define DINA7C 0x7c
yihui 0:972f3778c19c 347
yihui 0:972f3778c19c 348 #define DINA01 0x01
yihui 0:972f3778c19c 349 #define DINA09 0x09
yihui 0:972f3778c19c 350 #define DINA11 0x11
yihui 0:972f3778c19c 351 #define DINA19 0x19
yihui 0:972f3778c19c 352 #define DINA21 0x21
yihui 0:972f3778c19c 353 #define DINA29 0x29
yihui 0:972f3778c19c 354 #define DINA31 0x31
yihui 0:972f3778c19c 355 #define DINA39 0x39
yihui 0:972f3778c19c 356 #define DINA41 0x41
yihui 0:972f3778c19c 357 #define DINA49 0x49
yihui 0:972f3778c19c 358 #define DINA51 0x51
yihui 0:972f3778c19c 359 #define DINA59 0x59
yihui 0:972f3778c19c 360 #define DINA61 0x61
yihui 0:972f3778c19c 361 #define DINA69 0x69
yihui 0:972f3778c19c 362 #define DINA71 0x71
yihui 0:972f3778c19c 363 #define DINA79 0x79
yihui 0:972f3778c19c 364
yihui 0:972f3778c19c 365 #define DINA25 0x25
yihui 0:972f3778c19c 366 #define DINA2D 0x2d
yihui 0:972f3778c19c 367 #define DINA35 0x35
yihui 0:972f3778c19c 368 #define DINA3D 0x3d
yihui 0:972f3778c19c 369 #define DINA4D 0x4d
yihui 0:972f3778c19c 370 #define DINA55 0x55
yihui 0:972f3778c19c 371 #define DINA5D 0x5D
yihui 0:972f3778c19c 372 #define DINA6D 0x6d
yihui 0:972f3778c19c 373 #define DINA75 0x75
yihui 0:972f3778c19c 374 #define DINA7D 0x7d
yihui 0:972f3778c19c 375
yihui 0:972f3778c19c 376 #define DINADC 0xdc
yihui 0:972f3778c19c 377 #define DINAF2 0xf2
yihui 0:972f3778c19c 378 #define DINAAB 0xab
yihui 0:972f3778c19c 379 #define DINAAA 0xaa
yihui 0:972f3778c19c 380 #define DINAF1 0xf1
yihui 0:972f3778c19c 381 #define DINADF 0xdf
yihui 0:972f3778c19c 382 #define DINADA 0xda
yihui 0:972f3778c19c 383 #define DINAB1 0xb1
yihui 0:972f3778c19c 384 #define DINAB9 0xb9
yihui 0:972f3778c19c 385 #define DINAF3 0xf3
yihui 0:972f3778c19c 386 #define DINA8B 0x8b
yihui 0:972f3778c19c 387 #define DINAA3 0xa3
yihui 0:972f3778c19c 388 #define DINA91 0x91
yihui 0:972f3778c19c 389 #define DINAB6 0xb6
yihui 0:972f3778c19c 390 #define DINAB4 0xb4
yihui 0:972f3778c19c 391
yihui 0:972f3778c19c 392
yihui 0:972f3778c19c 393 #define DINC00 0x00
yihui 0:972f3778c19c 394 #define DINC01 0x01
yihui 0:972f3778c19c 395 #define DINC02 0x02
yihui 0:972f3778c19c 396 #define DINC03 0x03
yihui 0:972f3778c19c 397 #define DINC08 0x08
yihui 0:972f3778c19c 398 #define DINC09 0x09
yihui 0:972f3778c19c 399 #define DINC0A 0x0a
yihui 0:972f3778c19c 400 #define DINC0B 0x0b
yihui 0:972f3778c19c 401 #define DINC10 0x10
yihui 0:972f3778c19c 402 #define DINC11 0x11
yihui 0:972f3778c19c 403 #define DINC12 0x12
yihui 0:972f3778c19c 404 #define DINC13 0x13
yihui 0:972f3778c19c 405 #define DINC18 0x18
yihui 0:972f3778c19c 406 #define DINC19 0x19
yihui 0:972f3778c19c 407 #define DINC1A 0x1a
yihui 0:972f3778c19c 408 #define DINC1B 0x1b
yihui 0:972f3778c19c 409
yihui 0:972f3778c19c 410 #define DINC20 0x20
yihui 0:972f3778c19c 411 #define DINC21 0x21
yihui 0:972f3778c19c 412 #define DINC22 0x22
yihui 0:972f3778c19c 413 #define DINC23 0x23
yihui 0:972f3778c19c 414 #define DINC28 0x28
yihui 0:972f3778c19c 415 #define DINC29 0x29
yihui 0:972f3778c19c 416 #define DINC2A 0x2a
yihui 0:972f3778c19c 417 #define DINC2B 0x2b
yihui 0:972f3778c19c 418 #define DINC30 0x30
yihui 0:972f3778c19c 419 #define DINC31 0x31
yihui 0:972f3778c19c 420 #define DINC32 0x32
yihui 0:972f3778c19c 421 #define DINC33 0x33
yihui 0:972f3778c19c 422 #define DINC38 0x38
yihui 0:972f3778c19c 423 #define DINC39 0x39
yihui 0:972f3778c19c 424 #define DINC3A 0x3a
yihui 0:972f3778c19c 425 #define DINC3B 0x3b
yihui 0:972f3778c19c 426
yihui 0:972f3778c19c 427 #define DINC40 0x40
yihui 0:972f3778c19c 428 #define DINC41 0x41
yihui 0:972f3778c19c 429 #define DINC42 0x42
yihui 0:972f3778c19c 430 #define DINC43 0x43
yihui 0:972f3778c19c 431 #define DINC48 0x48
yihui 0:972f3778c19c 432 #define DINC49 0x49
yihui 0:972f3778c19c 433 #define DINC4A 0x4a
yihui 0:972f3778c19c 434 #define DINC4B 0x4b
yihui 0:972f3778c19c 435 #define DINC50 0x50
yihui 0:972f3778c19c 436 #define DINC51 0x51
yihui 0:972f3778c19c 437 #define DINC52 0x52
yihui 0:972f3778c19c 438 #define DINC53 0x53
yihui 0:972f3778c19c 439 #define DINC58 0x58
yihui 0:972f3778c19c 440 #define DINC59 0x59
yihui 0:972f3778c19c 441 #define DINC5A 0x5a
yihui 0:972f3778c19c 442 #define DINC5B 0x5b
yihui 0:972f3778c19c 443
yihui 0:972f3778c19c 444 #define DINC60 0x60
yihui 0:972f3778c19c 445 #define DINC61 0x61
yihui 0:972f3778c19c 446 #define DINC62 0x62
yihui 0:972f3778c19c 447 #define DINC63 0x63
yihui 0:972f3778c19c 448 #define DINC68 0x68
yihui 0:972f3778c19c 449 #define DINC69 0x69
yihui 0:972f3778c19c 450 #define DINC6A 0x6a
yihui 0:972f3778c19c 451 #define DINC6B 0x6b
yihui 0:972f3778c19c 452 #define DINC70 0x70
yihui 0:972f3778c19c 453 #define DINC71 0x71
yihui 0:972f3778c19c 454 #define DINC72 0x72
yihui 0:972f3778c19c 455 #define DINC73 0x73
yihui 0:972f3778c19c 456 #define DINC78 0x78
yihui 0:972f3778c19c 457 #define DINC79 0x79
yihui 0:972f3778c19c 458 #define DINC7A 0x7a
yihui 0:972f3778c19c 459 #define DINC7B 0x7b
yihui 0:972f3778c19c 460
yihui 0:972f3778c19c 461 #define DIND40 0x40
yihui 0:972f3778c19c 462
yihui 0:972f3778c19c 463
yihui 0:972f3778c19c 464 #define DINA80 0x80
yihui 0:972f3778c19c 465 #define DINA90 0x90
yihui 0:972f3778c19c 466 #define DINAA0 0xa0
yihui 0:972f3778c19c 467 #define DINAC9 0xc9
yihui 0:972f3778c19c 468 #define DINACB 0xcb
yihui 0:972f3778c19c 469 #define DINACD 0xcd
yihui 0:972f3778c19c 470 #define DINACF 0xcf
yihui 0:972f3778c19c 471 #define DINAC8 0xc8
yihui 0:972f3778c19c 472 #define DINACA 0xca
yihui 0:972f3778c19c 473 #define DINACC 0xcc
yihui 0:972f3778c19c 474 #define DINACE 0xce
yihui 0:972f3778c19c 475 #define DINAD8 0xd8
yihui 0:972f3778c19c 476 #define DINADD 0xdd
yihui 0:972f3778c19c 477 #define DINAF8 0xf0
yihui 0:972f3778c19c 478 #define DINAFE 0xfe
yihui 0:972f3778c19c 479
yihui 0:972f3778c19c 480 #define DINBF8 0xf8
yihui 0:972f3778c19c 481 #define DINAC0 0xb0
yihui 0:972f3778c19c 482 #define DINAC1 0xb1
yihui 0:972f3778c19c 483 #define DINAC2 0xb4
yihui 0:972f3778c19c 484 #define DINAC3 0xb5
yihui 0:972f3778c19c 485 #define DINAC4 0xb8
yihui 0:972f3778c19c 486 #define DINAC5 0xb9
yihui 0:972f3778c19c 487 #define DINBC0 0xc0
yihui 0:972f3778c19c 488 #define DINBC2 0xc2
yihui 0:972f3778c19c 489 #define DINBC4 0xc4
yihui 0:972f3778c19c 490 #define DINBC6 0xc6
yihui 0:972f3778c19c 491
yihui 0:972f3778c19c 492
yihui 0:972f3778c19c 493
yihui 0:972f3778c19c 494 #endif // DMPKEY_H__