char MAG3110_ReadRawData(char* data) { char a = 0; short b = 0; if (MAG3110_Initialized == 1) { MAG3110_WRITE_REGISTER(17, 128); MAG3110_WRITE_REGISTER(16, 2); do { a = MAG3110_READ_REGISTER(0); } while ((a & 7) != 7); MAG3110_BULK_READ(1, 6, data); } return 1; }
/**************************************************************************//*! * @brief Function reads current data from sensor's register * * @param *mag3110 - pointer to value buffer ******************************************************************************/ uint8_t MAG3110_ReadRawData(uint8_t * pdata) { byte ix = 0; int16_t z_val = 0; if(MAG3110_enabled == TRUE) { MAG3110_WRITE_REGISTER(REG3110_CTRL_REG2, 0x80); MAG3110_WRITE_REGISTER(REG3110_CTRL_REG1, 0x02); do { ix = MAG3110_READ_REGISTER(REG3110_DR_STATUS); }while((ix & ALL_DATA_RDY) != ALL_DATA_RDY); MAG3110_BULK_READ(REG3110_OUT_X_MSB, 6, pdata); } return TRUE; }