Self test boot program for testing icarus sensors
Dependencies: BLE_API mbed nRF51822
Fork of BLE_UARTConsole by
Diff: ADXL362Sensor.cpp
- Revision:
- 12:9076e6453115
- Parent:
- 11:70359785c2a7
- Child:
- 13:ef0ce8fa871f
--- a/ADXL362Sensor.cpp Thu Jan 29 12:24:01 2015 +0000 +++ b/ADXL362Sensor.cpp Tue Mar 03 20:00:21 2015 +0000 @@ -5,10 +5,8 @@ #define LOG(...) do printf(__VA_ARGS__); while (0) #endif -ADXL362Sensor::ADXL362Sensor(SPI* spi_,DigitalOut* cs_) : BaseSensor() { - this->spi=spi_; - this->cs=cs_; - *cs = UP; +ADXL362Sensor::ADXL362Sensor(SPI& spi_,DigitalOut& cs_) : BaseSensor(), spi(spi_), cs(cs_) { + cs = UP; } char* ADXL362Sensor::getSimpleName() { @@ -88,48 +86,48 @@ { int16_t xyzVal[6] = {0, 0, 0, 0, 0, 0}; - *cs = DOWN; - spi->write(ADXL362_READ_REGISTER); - spi->write(ADXL362_DATA_12); + cs = DOWN; + spi.write(ADXL362_READ_REGISTER); + spi.write(ADXL362_DATA_12); for (int i = 0; i < 6; i++) { - xyzVal[i] = spi->write(0x00); + xyzVal[i] = spi.write(0x00); } *x = (xyzVal[1] << 8) + xyzVal[0]; *y = (xyzVal[3] << 8) + xyzVal[2]; *z = (xyzVal[5] << 8) + xyzVal[4]; - *cs = UP; + cs = UP; } uint32_t ADXL362Sensor::readRegister32( uint8_t reg){ uint32_t val[4] = {0,0,0,0}; - *cs = DOWN; - spi->write(ADXL362_READ_REGISTER); - spi->write(reg); + cs = DOWN; + spi.write(ADXL362_READ_REGISTER); + spi.write(reg); for (int i=0;i<4;i++){ - val[i] = spi->write(0x00); + val[i] = spi.write(0x00); } - *cs = UP; + cs = UP; return (val[0] << 24) + (val[1] << 16) + (val[2] << 8) + val[3]; } uint8_t ADXL362Sensor::readRegister( uint8_t reg){ - *cs = DOWN; - spi->write(ADXL362_READ_REGISTER); - spi->write(reg); - uint8_t val = spi->write(0x00); - *cs = UP; + cs = DOWN; + spi.write(ADXL362_READ_REGISTER); + spi.write(reg); + uint8_t val = spi.write(0x00); + cs = UP; return (val); } void ADXL362Sensor::writeRegister( uint8_t reg, uint8_t cmd ){ - cs->write(DOWN); - spi->write(ADXL362_WRITE_REGISTER); - spi->write(reg); - spi->write(cmd); - cs->write(UP); + cs = DOWN; + spi.write(ADXL362_WRITE_REGISTER); + spi.write(reg); + spi.write(cmd); + cs = UP; }