Author
|
Matrix TSL
|
Version
|
1.6
|
Category
|
Movement & Orientation
|
Magnetometer 3-Axis component
QMC5883L 3-Axis Magnetometer sensor Useful for working out data such as compass orientation.
Detailed description
No detailed description exists yet for this component
Examples
Here is a very simple demonstration on how to use the sensor to read X, Y, Z magnetometer data from the sensor.
QMC5883L Demo
Downloadable macro reference
|
Read_Register
|
Reads a value from a register on the accelerometer.
|
- BYTE
|
Reg
|
|
- BYTE
|
Return
|
|
Write_Register
|
Writes a data value to a specific register on the accelerometer
|
- BYTE
|
Reg
|
|
- BYTE
|
Data
|
|
- BYTE
|
Return
|
|
UpdateCompassData
|
Reads from the compass and updates the local XYZ variables. Returns 1 for new data and 0 for no new data
|
- BYTE
|
Return
|
|
CollectXYZData
|
Collect the data from the local accelerometer buffers. The Axis parameter specifies the Axis to be read. 0 / 'x' / 'X' - X axis 1 / 'y' / 'Y' - Y axis 2 / 'z' / 'Z' - Z axis
|
- BYTE
|
Axis
|
|
[[File:]] -
|
Return
|
|
SimSetCompass
|
Allows the XYZ slider values to be set via the simulation
|
[[File:]] -
|
X
|
|
[[File:]] -
|
Y
|
|
[[File:]] -
|
Z
|
|
- VOID
|
Return
|
|
Read_Bearing
|
Reads the current sensor compass bearing based on degrees CW from magnetic north. Returns 0-359 where 0 = North, 90 = East, 180 = South, 270 = West Requires the ArcTan floating point function to be available to work correctly. Supported on AVR, 16-bit
|
- BYTE
|
NumSamples
|
The number of readings to base the bearing on
|
- UINT
|
Return
|
|
Initialise
|
Sets up up the communication bus and initialises the accelerometer module.
|
- VOID
|
Return
|
|
SimSetCompass
|
Allows the XYZ slider values to be set via the simulation
|
[[File:]] -
|
X
|
|
[[File:]] -
|
Y
|
|
[[File:]] -
|
Z
|
|
- VOID
|
Return
|
|
Read_Bearing
|
Reads the current sensor compass bearing based on degrees CW from magnetic north. Returns 0-359 where 0 = North, 90 = East, 180 = South, 270 = West Requires the ArcTan floating point function to be available to work correctly. Supported on AVR, 16-bit
|
- BYTE
|
NumSamples
|
The number of readings to base the bearing on
|
- UINT
|
Return
|
|
Initialise
|
Sets up up the communication bus and initialises the accelerometer module. Returns 0 for success and > 0 for fail.
|
- BYTE
|
Return
|
Property reference
|
Properties
|
|
Bit Depth
|
|
|
Compass Data Rate
|
Sets the output conversion rate.
|
|
Oversample Ratio
|
|
|
Compass Scale
|
|
|
Scope Traces
|
Selects if the scope traces are automatically generated or not
|
|
Console Data
|
Selects if the console data is automatically generated or not
|
|
API
|
|
|
Connections
|
|
Channel
|
Channel selection
|
|
Baud Select
|
Baud rate option selector
|
|
Baud Rate
|
Baud rate to be used
|
|
Stop Delay
|
On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications.
|
|
SDA
|
Pin used for SDA (data signal)
|
|
SCL
|
Pin used for SCL (clock signal)
|
|
Use RDY Pin
|
|
|
Simulations
|
|
Simulate Comms
|
Yes: Accelerometer data will come from the simulation component sliders. No: Accelerometer data will come from the I2C CAL component - API etc
|