I2C sensor test program, derived from testI2C program. Simple test for FXOS8700CQ, HIH6130, MAG3110, MMA8451Q, MMA8452Q, MPL3115A2, MAX44000, MAX44005, MAX44008, MAX30101 included beside simple I2C read/write from testI2C.

Dependencies:   FXOS8700CQ HIH6130 IS31SE5000 MAG3110 MAX44000 MAX44005 MAX44008 MMA8451Q MMA8452Q MPL3115A2 VEML6040 VEML6075 mbed vt100 LM75B FXAS21002 MAX30101 VCNL4020 VCNL4100

Committer:
Rhyme
Date:
Fri Jul 29 08:23:21 2016 +0000
Revision:
7:8f438094f8cc
Parent:
6:897f32c6ef7d
Child:
9:d4f76e6fa35f
Support of FXAS21002 added

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Rhyme 0:d4bbd473a83c 1 #include "mbed.h"
Rhyme 0:d4bbd473a83c 2 #include "vt100.h"
Rhyme 0:d4bbd473a83c 3 #include "MSS.h"
Rhyme 0:d4bbd473a83c 4 #include "MSU.h"
Rhyme 0:d4bbd473a83c 5 #include "MMA8451Q.h"
Rhyme 0:d4bbd473a83c 6 #include "MMA8452Q.h"
Rhyme 0:d4bbd473a83c 7 #include "MAG3110.h"
Rhyme 0:d4bbd473a83c 8 #include "HIH6130.h"
Rhyme 0:d4bbd473a83c 9 #include "FXOS8700CQ.h"
Rhyme 0:d4bbd473a83c 10 #include "MAX44000.h"
Rhyme 0:d4bbd473a83c 11 #include "MAX44005.h"
Rhyme 0:d4bbd473a83c 12 #include "MAX44008.h"
Rhyme 0:d4bbd473a83c 13 #include "MPL3115A2.h"
Rhyme 0:d4bbd473a83c 14 #include "VEML6040.h"
Rhyme 0:d4bbd473a83c 15 #include "VEML6075.h"
Rhyme 3:be01d9e0fa3e 16 #include "LM75B.h"
Rhyme 7:8f438094f8cc 17 #include "FXAS21002.h"
Rhyme 0:d4bbd473a83c 18
Rhyme 0:d4bbd473a83c 19
Rhyme 0:d4bbd473a83c 20 extern int test_loop ;
Rhyme 0:d4bbd473a83c 21
Rhyme 0:d4bbd473a83c 22 extern vt100 *tty ;
Rhyme 0:d4bbd473a83c 23
Rhyme 0:d4bbd473a83c 24 i2c_sensor_type i2c_sensor[] = {
Rhyme 0:d4bbd473a83c 25 {MSU_MMA8451Q_ADDRESS, "MMA8451Q", testMMA8451Q},
Rhyme 0:d4bbd473a83c 26 {MSU_MMA8452Q_ADDRESS, "MMA8452Q", testMMA8452Q},
Rhyme 0:d4bbd473a83c 27 {MSU_MAG3110_ADDRESS, "MAG3110", testMAG3110},
Rhyme 0:d4bbd473a83c 28 {MSU_HIH6130_ADDRESS, "HIH6130", testHIH6130},
Rhyme 0:d4bbd473a83c 29 {MSU_FXOS8700CQ_ADDRESS, "FXOS8700CQ", testFXOS8700CQ},
Rhyme 0:d4bbd473a83c 30 {MSU_MAX44000_ADDRESS, "MAX44000", testMAX44000},
Rhyme 0:d4bbd473a83c 31 {MSU_MAX44005_ADDRESS, "MAX44005", testMAX44005},
Rhyme 0:d4bbd473a83c 32 {MSU_MAX44008_ADDRESS, "MAX44008", testMAX44008},
Rhyme 0:d4bbd473a83c 33 {MSU_MAX30101_ADDRESS, "MAX30101", testMAX30101},
Rhyme 0:d4bbd473a83c 34 {MSU_MPL3115A2_ADDRESS, "MPL3115A2", testMPL3115A2},
Rhyme 0:d4bbd473a83c 35 {MSU_IS31SE5000_ADDRESS, "IS31SE5000", testIS31SE5000},
Rhyme 0:d4bbd473a83c 36 {MSU_VEML6040A_ADDRESS, "VEML6040A", testVEML6040A},
Rhyme 0:d4bbd473a83c 37 {MSU_VEML6075A_ADDRESS, "VEML6075A", testVEML6075A},
Rhyme 3:be01d9e0fa3e 38 {MSU_LM75B_ADDRESS, "LM75B", testLM75B},
Rhyme 7:8f438094f8cc 39 {MSU_FXAS21002_ADDRESS, "FXAS21002", testFXAS21002},
Rhyme 0:d4bbd473a83c 40 {0x00, 0, 0}
Rhyme 0:d4bbd473a83c 41 } ;
Rhyme 0:d4bbd473a83c 42
Rhyme 3:be01d9e0fa3e 43 void testLM75B(void)
Rhyme 3:be01d9e0fa3e 44 {
Rhyme 3:be01d9e0fa3e 45 int8_t itemp = 0 ;
Rhyme 3:be01d9e0fa3e 46 float ftemp = 0.0 ;
Rhyme 3:be01d9e0fa3e 47 printf("test LM75B\n") ;
Rhyme 3:be01d9e0fa3e 48 LM75B *lm75b = new LM75B(PIN_SDA, PIN_SCL, MSU_LM75B_ADDRESS) ;
Rhyme 3:be01d9e0fa3e 49 for (int i = 0 ; i < test_loop ; i++ ) {
Rhyme 3:be01d9e0fa3e 50 itemp = lm75b->temp() ;
Rhyme 3:be01d9e0fa3e 51 lm75b->getTemp(&ftemp) ;
Rhyme 3:be01d9e0fa3e 52 printf("Temp = %d C degree, %.3f C degree\n", itemp, ftemp) ;
Rhyme 3:be01d9e0fa3e 53 wait(0.5) ;
Rhyme 3:be01d9e0fa3e 54 }
Rhyme 7:8f438094f8cc 55 delete lm75b ;
Rhyme 3:be01d9e0fa3e 56 }
Rhyme 3:be01d9e0fa3e 57
Rhyme 7:8f438094f8cc 58 void testFXAS21002(void)
Rhyme 7:8f438094f8cc 59 {
Rhyme 7:8f438094f8cc 60 int16_t data[3] ;
Rhyme 7:8f438094f8cc 61
Rhyme 7:8f438094f8cc 62 printf("test FXAS21002\n") ;
Rhyme 7:8f438094f8cc 63 FXAS21002 *fxas = new FXAS21002(PIN_SDA, PIN_SCL, MSU_FXAS21002_ADDRESS) ;
Rhyme 7:8f438094f8cc 64 fxas->activate(true) ;
Rhyme 7:8f438094f8cc 65
Rhyme 7:8f438094f8cc 66 for (int i = 0 ; i < test_loop ; i++ ) {
Rhyme 7:8f438094f8cc 67 data[0] = fxas->getX() ;
Rhyme 7:8f438094f8cc 68 data[1] = fxas->getY() ;
Rhyme 7:8f438094f8cc 69 data[2] = fxas->getZ() ;
Rhyme 7:8f438094f8cc 70 printf("X[%6d], Y[%6d], Z[%6d]\n",
Rhyme 7:8f438094f8cc 71 data[0], data[1], data[2]) ;
Rhyme 7:8f438094f8cc 72 wait(0.2) ;
Rhyme 7:8f438094f8cc 73 }
Rhyme 7:8f438094f8cc 74 delete fxas ;
Rhyme 7:8f438094f8cc 75 }
Rhyme 7:8f438094f8cc 76
Rhyme 0:d4bbd473a83c 77 void testMMA8451Q(void)
Rhyme 0:d4bbd473a83c 78 {
Rhyme 0:d4bbd473a83c 79 uint16_t ix, iy, iz ;
Rhyme 0:d4bbd473a83c 80 float fx, fy, fz ;
Rhyme 0:d4bbd473a83c 81
Rhyme 0:d4bbd473a83c 82 printf("test MMA8451Q\n") ;
Rhyme 0:d4bbd473a83c 83 MMA8451Q *acc = new MMA8451Q(PIN_SDA, PIN_SCL, MSU_MMA8451Q_ADDRESS) ;
Rhyme 0:d4bbd473a83c 84 for(int i = 0 ; i < test_loop ; i++) {
Rhyme 0:d4bbd473a83c 85 ix = acc->getRawX() ;
Rhyme 0:d4bbd473a83c 86 iy = acc->getRawY() ;
Rhyme 0:d4bbd473a83c 87 iz = acc->getRawZ() ;
Rhyme 0:d4bbd473a83c 88 fx = acc->getAccX() ;
Rhyme 0:d4bbd473a83c 89 fy = acc->getAccY() ;
Rhyme 0:d4bbd473a83c 90 fz = acc->getAccZ() ;
Rhyme 0:d4bbd473a83c 91 printf("X = %d [ %.2f ], Y = %d [ %.2f ], Z = %d [ %.2f ]\n",
Rhyme 0:d4bbd473a83c 92 ix, fx, iy, fy, iz, fz ) ;
Rhyme 0:d4bbd473a83c 93 wait(0.2) ;
Rhyme 0:d4bbd473a83c 94 }
Rhyme 0:d4bbd473a83c 95 delete acc ;
Rhyme 0:d4bbd473a83c 96 }
Rhyme 0:d4bbd473a83c 97
Rhyme 0:d4bbd473a83c 98 void testMMA8452Q(void)
Rhyme 0:d4bbd473a83c 99 {
Rhyme 0:d4bbd473a83c 100 float x, y, z ;
Rhyme 0:d4bbd473a83c 101 printf("test MMA8452Q\n") ;
Rhyme 0:d4bbd473a83c 102 MMA8452Q *acc = new MMA8452Q(PIN_SDA, PIN_SCL, MSU_MMA8452Q_ADDRESS) ;
Rhyme 0:d4bbd473a83c 103 for(int i = 0 ; i < test_loop ; i++) {
Rhyme 0:d4bbd473a83c 104 x = acc->getAccX() ;
Rhyme 0:d4bbd473a83c 105 y = acc->getAccY() ;
Rhyme 0:d4bbd473a83c 106 z = acc->getAccZ() ;
Rhyme 0:d4bbd473a83c 107 printf("X[%.2f] Y[%.2f] Z[%.2f]\n",x, y, z) ;
Rhyme 0:d4bbd473a83c 108 wait(0.1);
Rhyme 0:d4bbd473a83c 109 }
Rhyme 0:d4bbd473a83c 110 delete acc ;
Rhyme 0:d4bbd473a83c 111 }
Rhyme 0:d4bbd473a83c 112
Rhyme 0:d4bbd473a83c 113 void testMAG3110(void)
Rhyme 0:d4bbd473a83c 114 {
Rhyme 0:d4bbd473a83c 115 uint8_t status = 0 ;
Rhyme 0:d4bbd473a83c 116 int16_t mX, mY, mZ ;
Rhyme 0:d4bbd473a83c 117 float fx, fy, fz ;
Rhyme 0:d4bbd473a83c 118 int x = 10 ;
Rhyme 0:d4bbd473a83c 119 int y = 5 ;
Rhyme 0:d4bbd473a83c 120 MAG3110 *mag = new MAG3110(PIN_SDA, PIN_SCL, MSU_MAG3110_ADDRESS) ;
Rhyme 0:d4bbd473a83c 121 mag->activate() ;
Rhyme 0:d4bbd473a83c 122 tty->cls() ;
Rhyme 0:d4bbd473a83c 123 printf("test MAG3110\n") ;
Rhyme 0:d4bbd473a83c 124 for (int i = 0 ; i < test_loop ; i++) {
Rhyme 0:d4bbd473a83c 125 wait(0.01) ;
Rhyme 0:d4bbd473a83c 126 status = mag->getStatus() ;
Rhyme 0:d4bbd473a83c 127 while((status & 0x80) == 0) { // wait for ZYXOW
Rhyme 0:d4bbd473a83c 128 wait(0.01) ;
Rhyme 0:d4bbd473a83c 129 status = mag->getStatus() ;
Rhyme 0:d4bbd473a83c 130 }
Rhyme 0:d4bbd473a83c 131
Rhyme 0:d4bbd473a83c 132 tty->locate(x+5, y) ;
Rhyme 0:d4bbd473a83c 133 printf("--- MAG3110 ---") ;
Rhyme 0:d4bbd473a83c 134 tty->locate(x, y+4) ;
Rhyme 0:d4bbd473a83c 135 printf("Temperature: %02X",mag->getTemp()) ;
Rhyme 0:d4bbd473a83c 136 tty->locate(x, y+5) ;
Rhyme 0:d4bbd473a83c 137 printf("status: 0x%02X",mag->getStatus()) ;
Rhyme 0:d4bbd473a83c 138 tty->locate(x, y+6) ;
Rhyme 0:d4bbd473a83c 139 printf("ctrl reg1: 0x%02X ", mag->getCtrlReg1()) ;
Rhyme 0:d4bbd473a83c 140 printf("reg2: 0x%02X", mag->getCtrlReg2()) ;
Rhyme 0:d4bbd473a83c 141 mX = mag->getX() ; // here reset takes place!
Rhyme 0:d4bbd473a83c 142 mY = mag->getY() ;
Rhyme 0:d4bbd473a83c 143 mZ = mag->getZ() ;
Rhyme 0:d4bbd473a83c 144 fx = 10000 * (float)mX / (float)0x7FFF ;
Rhyme 0:d4bbd473a83c 145 fy = 10000 * (float)mY / (float)0x7FFF ;
Rhyme 0:d4bbd473a83c 146 fz = 10000 * (float)mZ / (float)0x7FFF ;
Rhyme 0:d4bbd473a83c 147 tty->locate(x, y+1) ;
Rhyme 0:d4bbd473a83c 148 printf("X : ") ;
Rhyme 0:d4bbd473a83c 149 if (fx >= 0) { printf(" ") ; }
Rhyme 0:d4bbd473a83c 150 printf("%.2f uT : 0x%08X ", fx, mX) ;
Rhyme 0:d4bbd473a83c 151
Rhyme 0:d4bbd473a83c 152 tty->locate(x, y+2) ;
Rhyme 0:d4bbd473a83c 153 printf("Y : ") ;
Rhyme 0:d4bbd473a83c 154 if (fy >= 0) { printf(" ") ; }
Rhyme 0:d4bbd473a83c 155 printf("%.2f uT : 0x%08X ", fy, mY) ;
Rhyme 0:d4bbd473a83c 156
Rhyme 0:d4bbd473a83c 157 tty->locate(x, y+3) ;
Rhyme 0:d4bbd473a83c 158 printf("Z : ") ;
Rhyme 0:d4bbd473a83c 159 if (fz >= 0) { printf(" ") ; }
Rhyme 0:d4bbd473a83c 160 printf("%.2f uT : 0x%08X ", fz, mZ) ;
Rhyme 0:d4bbd473a83c 161 }
Rhyme 0:d4bbd473a83c 162 tty->locate(0, 20) ;
Rhyme 0:d4bbd473a83c 163 mag->standby() ;
Rhyme 0:d4bbd473a83c 164 delete mag ;
Rhyme 0:d4bbd473a83c 165 }
Rhyme 0:d4bbd473a83c 166
Rhyme 0:d4bbd473a83c 167 void testHIH6130(void)
Rhyme 0:d4bbd473a83c 168 {
Rhyme 0:d4bbd473a83c 169 uint16_t result = 0 ;
Rhyme 0:d4bbd473a83c 170 float humidity = 0 ;
Rhyme 0:d4bbd473a83c 171 float temperature = 0 ;
Rhyme 0:d4bbd473a83c 172 HIH6130 *hih = new HIH6130(PIN_SDA, PIN_SCL, MSU_HIH6130_ADDRESS) ;
Rhyme 0:d4bbd473a83c 173 printf("test HIH6130\n") ;
Rhyme 0:d4bbd473a83c 174 for (int i = 0 ; i < test_loop ; i++) {
Rhyme 0:d4bbd473a83c 175 result = hih->getValue(&humidity, &temperature) ;
Rhyme 0:d4bbd473a83c 176 printf("Temp %.1f C Humidity %.1f %%\n", temperature, humidity) ;
Rhyme 0:d4bbd473a83c 177 wait(1) ;
Rhyme 0:d4bbd473a83c 178 }
Rhyme 0:d4bbd473a83c 179 }
Rhyme 0:d4bbd473a83c 180
Rhyme 0:d4bbd473a83c 181 void testFXOS8700CQ(void)
Rhyme 0:d4bbd473a83c 182 {
Rhyme 0:d4bbd473a83c 183 int16_t accData[3], mgnData[3] ;
Rhyme 0:d4bbd473a83c 184
Rhyme 0:d4bbd473a83c 185 printf("test FXOS8700CQ\n") ;
Rhyme 0:d4bbd473a83c 186 FXOS8700CQ *fxos = new FXOS8700CQ(PIN_SDA, PIN_SCL, MSU_FXOS8700CQ_ADDRESS) ;
Rhyme 0:d4bbd473a83c 187 fxos->init() ;
Rhyme 0:d4bbd473a83c 188
Rhyme 0:d4bbd473a83c 189 for (int i = 0 ; i < test_loop ; i++) {
Rhyme 0:d4bbd473a83c 190 fxos->readAccMgnData(accData, mgnData) ;
Rhyme 0:d4bbd473a83c 191 printf("ACC X[%d], Y[%d], Z[%d], MGN X[%d], Y[%d], Z[%d]\n",
Rhyme 0:d4bbd473a83c 192 accData[0], accData[1], accData[2],
Rhyme 0:d4bbd473a83c 193 mgnData[0], mgnData[1], mgnData[2]) ;
Rhyme 0:d4bbd473a83c 194 wait(0.2) ;
Rhyme 0:d4bbd473a83c 195 }
Rhyme 0:d4bbd473a83c 196 delete fxos ;
Rhyme 0:d4bbd473a83c 197 }
Rhyme 0:d4bbd473a83c 198
Rhyme 1:9450e20cf688 199 void testMAX44000(void)
Rhyme 1:9450e20cf688 200 {
Rhyme 1:9450e20cf688 201 uint8_t mode ;
Rhyme 1:9450e20cf688 202 uint8_t txdata, rxdata ;
Rhyme 1:9450e20cf688 203 uint16_t als ;
Rhyme 1:9450e20cf688 204 uint8_t prox, overflow ;
Rhyme 1:9450e20cf688 205 int x = 10 ;
Rhyme 1:9450e20cf688 206 int y = 5 ;
Rhyme 1:9450e20cf688 207
Rhyme 1:9450e20cf688 208 tty->cls() ;
Rhyme 1:9450e20cf688 209 printf("test MAX44000\n") ;
Rhyme 1:9450e20cf688 210 MAX44000 *max44000 = new MAX44000(PIN_SDA, PIN_SCL, MSU_MAX44000_ADDRESS) ;
Rhyme 1:9450e20cf688 211
Rhyme 1:9450e20cf688 212 rxdata = 0xF1 ;
Rhyme 1:9450e20cf688 213 max44000->setRxConfig(rxdata) ;
Rhyme 6:897f32c6ef7d 214 txdata = 0x0F ; /* light LED! */
Rhyme 1:9450e20cf688 215 max44000->setTxConfig(txdata) ;
Rhyme 6:897f32c6ef7d 216 mode = 0x30 ; // ALS & PROX mode
Rhyme 1:9450e20cf688 217 max44000->setMainConfig(mode) ;
Rhyme 1:9450e20cf688 218
Rhyme 1:9450e20cf688 219 for (int i = 0 ; i < test_loop ; i++ ) {
Rhyme 1:9450e20cf688 220 max44000->getADC(&overflow, &als, &prox) ;
Rhyme 1:9450e20cf688 221 printf("ALS[ %04X ]", als) ;
Rhyme 1:9450e20cf688 222 if (overflow) {
Rhyme 5:cdac8329b22c 223 printf(" overflow ") ;
Rhyme 1:9450e20cf688 224 } else {
Rhyme 5:cdac8329b22c 225 printf(" ") ;
Rhyme 1:9450e20cf688 226 }
Rhyme 5:cdac8329b22c 227 printf("PRX[ %02X ]\n", prox) ;
Rhyme 1:9450e20cf688 228 wait(1) ;
Rhyme 1:9450e20cf688 229 }
Rhyme 6:897f32c6ef7d 230 txdata = 0x00 ; /* dim LED! */
Rhyme 6:897f32c6ef7d 231 max44000->setTxConfig(txdata) ;
Rhyme 1:9450e20cf688 232 delete max44000 ;
Rhyme 1:9450e20cf688 233 }
Rhyme 1:9450e20cf688 234
Rhyme 1:9450e20cf688 235 void testMAX44005(void)
Rhyme 1:9450e20cf688 236 {
Rhyme 1:9450e20cf688 237 uint16_t amb_c, amb_r, amb_g, amb_b, amb_ir, amb_ircomp, amb_temp ;
Rhyme 1:9450e20cf688 238 MAX44005 *max44005 = new MAX44005(PIN_SDA, PIN_SCL, MSU_MAX44005_ADDRESS) ;
Rhyme 1:9450e20cf688 239 max44005->enableTEMP() ;
Rhyme 1:9450e20cf688 240 max44005->setMode(0x04) ;
Rhyme 1:9450e20cf688 241 printf("test MAX44005\n") ;
Rhyme 1:9450e20cf688 242
Rhyme 1:9450e20cf688 243 for (int i = 0 ; i < test_loop ; i++ ) {
Rhyme 1:9450e20cf688 244 amb_c = max44005->getAMB_CLEAR() ;
Rhyme 1:9450e20cf688 245 amb_r = max44005->getAMB_RED() ;
Rhyme 1:9450e20cf688 246 amb_g = max44005->getAMB_GREEN() ;
Rhyme 1:9450e20cf688 247 amb_b = max44005->getAMB_BLUE() ;
Rhyme 1:9450e20cf688 248 amb_ir = max44005->getIR() ;
Rhyme 1:9450e20cf688 249 amb_ircomp = max44005->getIRCOMP() ;
Rhyme 1:9450e20cf688 250 amb_temp = max44005->getTEMP() ;
Rhyme 1:9450e20cf688 251 printf("--- MAX44005 ---\n") ;
Rhyme 1:9450e20cf688 252 printf(" C[ %04X ]\n", amb_c) ;
Rhyme 1:9450e20cf688 253 printf("R[ %04X ] G[ %04X ] B[ %04X ]\n",amb_r, amb_g, amb_b) ;
Rhyme 1:9450e20cf688 254 printf("IR[ %04X ] IRCOMP [ %04X ]\n",amb_ir, amb_ircomp) ;
Rhyme 1:9450e20cf688 255 printf(" TEMP [ %04X ]\n",amb_temp) ;
Rhyme 1:9450e20cf688 256 printf("\n") ;
Rhyme 1:9450e20cf688 257 wait(1) ;
Rhyme 1:9450e20cf688 258 }
Rhyme 1:9450e20cf688 259 delete max44005 ;
Rhyme 1:9450e20cf688 260 }
Rhyme 1:9450e20cf688 261
Rhyme 1:9450e20cf688 262 #define MODE_CLEAR_RGB_IR 0x02
Rhyme 1:9450e20cf688 263 void testMAX44008(void)
Rhyme 1:9450e20cf688 264 {
Rhyme 1:9450e20cf688 265 uint16_t amb_c, amb_r, amb_g, amb_b, amb_ir, amb_ircomp, amb_temp ;
Rhyme 1:9450e20cf688 266
Rhyme 1:9450e20cf688 267 MAX44008 *max44008 = new MAX44008(PIN_SDA, PIN_SCL, MSU_MAX44008_ADDRESS) ;
Rhyme 1:9450e20cf688 268 max44008->setMode(MODE_CLEAR_RGB_IR) ;
Rhyme 1:9450e20cf688 269 printf("test MAX44008\n") ;
Rhyme 1:9450e20cf688 270
Rhyme 1:9450e20cf688 271 for (int i = 0 ; i < test_loop ; i++ ) {
Rhyme 1:9450e20cf688 272 amb_c = max44008->getAMB_CLEAR() ;
Rhyme 1:9450e20cf688 273 amb_r = max44008->getAMB_RED() ;
Rhyme 1:9450e20cf688 274 amb_g = max44008->getAMB_GREEN() ;
Rhyme 1:9450e20cf688 275 amb_b = max44008->getAMB_BLUE() ;
Rhyme 1:9450e20cf688 276 amb_ir = max44008->getIR() ;
Rhyme 1:9450e20cf688 277 amb_ircomp = max44008->getIRCOMP() ;
Rhyme 1:9450e20cf688 278 amb_temp = max44008->getTEMP() ;
Rhyme 1:9450e20cf688 279 printf("--- MAX44008 ---\n") ;
Rhyme 1:9450e20cf688 280 printf(" C[ %04X ]\n", amb_c) ;
Rhyme 1:9450e20cf688 281 printf("R[ %04X ] G[ %04X ] B[ %04X ]\n",amb_r, amb_g, amb_b) ;
Rhyme 1:9450e20cf688 282 printf("IR[ %04X ] IRCOMP [ %04X ]\n",amb_ir, amb_ircomp) ;
Rhyme 1:9450e20cf688 283 printf(" TEMP [ %04X ]\n",amb_temp) ;
Rhyme 1:9450e20cf688 284 printf("\n") ;
Rhyme 1:9450e20cf688 285 wait(1) ;
Rhyme 1:9450e20cf688 286 }
Rhyme 1:9450e20cf688 287 delete max44008 ;
Rhyme 1:9450e20cf688 288 }
Rhyme 1:9450e20cf688 289
Rhyme 1:9450e20cf688 290 void testMAX30101(void)
Rhyme 1:9450e20cf688 291 {
Rhyme 1:9450e20cf688 292 printf("test MAX30101\n") ;
Rhyme 1:9450e20cf688 293 printf("Sorry not implemented yet\n") ;
Rhyme 1:9450e20cf688 294 }
Rhyme 1:9450e20cf688 295
Rhyme 1:9450e20cf688 296 void testMPL3115A2(void)
Rhyme 1:9450e20cf688 297 {
Rhyme 1:9450e20cf688 298 uint32_t data, alt, bar, tmp ;
Rhyme 1:9450e20cf688 299 uint16_t sample_time ;
Rhyme 1:9450e20cf688 300 MPL3115A2 *mpl = new MPL3115A2(PIN_SDA, PIN_SCL, MSU_MPL3115A2_ADDRESS) ;
Rhyme 1:9450e20cf688 301
Rhyme 1:9450e20cf688 302 printf("test MPL3115A2\n") ;
Rhyme 1:9450e20cf688 303 for (int i = 0 ; i < test_loop ; i++) {
Rhyme 1:9450e20cf688 304 mpl->modeAlt() ;
Rhyme 1:9450e20cf688 305 sample_time = mpl->OneShot() ;
Rhyme 1:9450e20cf688 306 wait(((double)sample_time)/1000.0) ;
Rhyme 1:9450e20cf688 307 alt = mpl->getAltitude() ;
Rhyme 1:9450e20cf688 308 mpl->modeBar() ;
Rhyme 1:9450e20cf688 309 sample_time = mpl->OneShot() ;
Rhyme 1:9450e20cf688 310 wait(((double)sample_time)/1000.0) ;
Rhyme 1:9450e20cf688 311 bar = mpl->getPressure() ;
Rhyme 1:9450e20cf688 312 tmp = mpl->getTemperature() ;
Rhyme 1:9450e20cf688 313 printf("Altitude: %d, Pressure: %d, Temperature: %d\n",
Rhyme 1:9450e20cf688 314 (alt >> 16)&0xFFFF,
Rhyme 1:9450e20cf688 315 (bar >> 6),
Rhyme 1:9450e20cf688 316 (tmp >> 8) ) ;
Rhyme 1:9450e20cf688 317 wait(1) ;
Rhyme 1:9450e20cf688 318 }
Rhyme 1:9450e20cf688 319 delete mpl ;
Rhyme 1:9450e20cf688 320 }
Rhyme 1:9450e20cf688 321
Rhyme 1:9450e20cf688 322 void testIS31SE5000(void)
Rhyme 1:9450e20cf688 323 {
Rhyme 1:9450e20cf688 324 printf("test ISI31SE5000\n") ;
Rhyme 1:9450e20cf688 325 printf("Sorry not implemented yet\n") ;
Rhyme 1:9450e20cf688 326 }
Rhyme 1:9450e20cf688 327
Rhyme 1:9450e20cf688 328 void testVEML6040A(void)
Rhyme 1:9450e20cf688 329 {
Rhyme 1:9450e20cf688 330 printf("test VEML6040A\n") ;
Rhyme 1:9450e20cf688 331 printf("Sorry not implemented yet\n") ;
Rhyme 1:9450e20cf688 332 }
Rhyme 1:9450e20cf688 333
Rhyme 1:9450e20cf688 334 void testVEML6075A(void)
Rhyme 1:9450e20cf688 335 {
Rhyme 1:9450e20cf688 336 printf("test VEML6075A\n") ;
Rhyme 1:9450e20cf688 337 printf("Sorry not implemented yet\n") ;
Rhyme 1:9450e20cf688 338 }