mirror of
https://github.com/eclipse/upm.git
synced 2025-03-15 04:57:30 +03:00
hmc5883l: use int16_t as coordinate type throughout
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This commit is contained in:
parent
ea7b7a23fa
commit
9ab215b6fd
@ -31,7 +31,7 @@ main(int argc, char **argv)
|
|||||||
{
|
{
|
||||||
//! [Interesting]
|
//! [Interesting]
|
||||||
upm::Hmc5883l* compass = new upm::Hmc5883l(0);
|
upm::Hmc5883l* compass = new upm::Hmc5883l(0);
|
||||||
int *pos;
|
int16_t *pos;
|
||||||
|
|
||||||
compass->set_declination(0.2749); // Set your declination from true north in radians
|
compass->set_declination(0.2749); // Set your declination from true north in radians
|
||||||
|
|
||||||
|
@ -105,11 +105,11 @@ Hmc5883l::update(void)
|
|||||||
mraa_i2c_read(m_i2c, m_rx_tx_buf, DATA_REG_SIZE);
|
mraa_i2c_read(m_i2c, m_rx_tx_buf, DATA_REG_SIZE);
|
||||||
|
|
||||||
// x
|
// x
|
||||||
m_coor[0] = (int16_t)((m_rx_tx_buf[HMC5883L_X_MSB_REG] << 8 ) | m_rx_tx_buf[HMC5883L_X_LSB_REG]);
|
m_coor[0] = (m_rx_tx_buf[HMC5883L_X_MSB_REG] << 8 ) | m_rx_tx_buf[HMC5883L_X_LSB_REG];
|
||||||
// z
|
// z
|
||||||
m_coor[2] = (int16_t)((m_rx_tx_buf[HMC5883L_Z_MSB_REG] << 8 ) | m_rx_tx_buf[HMC5883L_Z_LSB_REG]);
|
m_coor[2] = (m_rx_tx_buf[HMC5883L_Z_MSB_REG] << 8 ) | m_rx_tx_buf[HMC5883L_Z_LSB_REG];
|
||||||
// y
|
// y
|
||||||
m_coor[1] = (int16_t)((m_rx_tx_buf[HMC5883L_Y_MSB_REG] << 8 ) | m_rx_tx_buf[HMC5883L_Y_LSB_REG]);
|
m_coor[1] = (m_rx_tx_buf[HMC5883L_Y_MSB_REG] << 8 ) | m_rx_tx_buf[HMC5883L_Y_LSB_REG];
|
||||||
|
|
||||||
return MRAA_SUCCESS;
|
return MRAA_SUCCESS;
|
||||||
}
|
}
|
||||||
@ -130,7 +130,7 @@ Hmc5883l::heading(void)
|
|||||||
return dir;
|
return dir;
|
||||||
}
|
}
|
||||||
|
|
||||||
int*
|
int16_t*
|
||||||
Hmc5883l::coordinates(void)
|
Hmc5883l::coordinates(void)
|
||||||
{
|
{
|
||||||
return &m_coor[0];
|
return &m_coor[0];
|
||||||
|
@ -72,7 +72,7 @@ public:
|
|||||||
*
|
*
|
||||||
* @return *int to an int[3]
|
* @return *int to an int[3]
|
||||||
*/
|
*/
|
||||||
int* coordinates();
|
int16_t* coordinates();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Updates the values by reading from i2c
|
* Updates the values by reading from i2c
|
||||||
@ -93,7 +93,7 @@ public:
|
|||||||
*/
|
*/
|
||||||
float get_declination();
|
float get_declination();
|
||||||
private:
|
private:
|
||||||
int m_coor[3];
|
int16_t m_coor[3];
|
||||||
float m_declination;
|
float m_declination;
|
||||||
uint8_t m_rx_tx_buf[MAX_BUFFER_LENGTH];
|
uint8_t m_rx_tx_buf[MAX_BUFFER_LENGTH];
|
||||||
mraa_i2c_context m_i2c;
|
mraa_i2c_context m_i2c;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user