Difference between revisions of "Component: Accel / Gyro / Mag 9-Axis (LSM9DS1) (Movement Orientation)"

From Flowcode Help
Jump to navigationJump to search
Line 16: Line 16:
  
 
==Component Source Code==
 
==Component Source Code==
 +
 +
Please click here to download the component source project: [https://www.flowcode.co.uk/wikicopy/componentsource/FC_Comp_Source_AccelMagGyro_LSM9DS1.fcfx FC_Comp_Source_AccelMagGyro_LSM9DS1.fcfx]
  
 
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_AccelMagGyro_LSM9DS1.fcfx FC_Comp_Source_AccelMagGyro_LSM9DS1.fcfx]
 
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_AccelMagGyro_LSM9DS1.fcfx FC_Comp_Source_AccelMagGyro_LSM9DS1.fcfx]
  
 
==Detailed description==
 
==Detailed description==
 +
 +
  
  
Line 40: Line 44:
  
 
==Examples==
 
==Examples==
 +
 +
  
  
Line 62: Line 68:
  
 
==Macro reference==
 
==Macro reference==
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Read_Register'''
 +
|-
 +
| colspan="2" | Reads a value from a register on the accelerometer. 
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | Reg
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadTemperature'''
 +
|-
 +
| colspan="2" | Reads the temperature from the sensor and returns the value as an integer. 
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SimSetTemperature'''
 +
|-
 +
| colspan="2" | Allows the XYZ slider values to be set via the simulation 
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | Temp
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SimReset1G'''
 +
|-
 +
| colspan="2" |  
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''UpdateGyroData'''
 +
|-
 +
| colspan="2" | Reads from the gyroscope and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Write_Register'''
 +
|-
 +
| colspan="2" | Writes a data value to a specific register on the accelerometer 
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | Reg
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | Data
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''UpdateCompassData'''
 +
|-
 +
| colspan="2" | Reads from the compass and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SimSetAccelerometer'''
 +
|-
 +
| colspan="2" | Allows the XYZ slider values to be set via the simulation 
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | X
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | Y
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | Z
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CollectXYZData'''
 +
|-
 +
| colspan="2" | 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 
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | Axis
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SimSetGyro'''
 +
|-
 +
| colspan="2" | Allows the XYZ slider values to be set via the simulation 
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | X
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | Y
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | Z
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''UpdateAccelerometerData'''
 +
|-
 +
| colspan="2" | Reads from the accelerometer and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SimSetCompass'''
 +
|-
 +
| colspan="2" | Allows the XYZ slider values to be set via the simulation 
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | X
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | Y
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | Z
 +
|-
 +
| colspan="2" |  
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Read_Bearing'''
 +
|-
 +
| colspan="2" | 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  
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | NumSamples
 +
|-
 +
| colspan="2" | The number of readings to base the bearing on 
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
 +
|-
 +
| colspan="2" | Sets up up the communication bus and initialises the accelerometer module.  Returns 0 for success and > 0 for fail. 
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
 +
 +
 +
 +
 +
==Property reference==
 +
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
 +
|-
 +
|-
 +
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 +
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Accel Gryo SA0 Pin
 +
|-
 +
| colspan="2" | Determines the LSB of the I2C device address to allow up to two sensors to work together. 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Magnetometer SA0 Pin
 +
|-
 +
| colspan="2" | Determines the LSB of the I2C device address to allow up to two sensors to work together. 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Channel
 +
|-
 +
| colspan="2" | Channel selection 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Baud Select
 +
|-
 +
| colspan="2" | Baud rate option selector 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 +
| width="90%" | Baud Rate
 +
|-
 +
| colspan="2" | Baud rate to be used 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 +
| width="90%" | Stop Delay
 +
|-
 +
| colspan="2" | 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.  
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 +
| width="90%" | SDA
 +
|-
 +
| colspan="2" | Pin used for SDA (data signal) 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 +
| width="90%" | SCL
 +
|-
 +
| colspan="2" | Pin used for SCL (clock signal) 
 +
|-
 +
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 +
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Sensor Properties
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Accel Scale
 +
|-
 +
| colspan="2" | Sets the output range of the accelerometer sensor 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Accel Data Rate
 +
|-
 +
| colspan="2" | Sets the accelerometer data rate and bandwidth 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Gyro Scale
 +
|-
 +
| colspan="2" | Sets the output scale of the gyro, measured in degrees per second 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Gyro Data Rate
 +
|-
 +
| colspan="2" | Sets the accelerometer data rate and bandwidth 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Compass Scale
 +
|-
 +
| colspan="2" | Sets the magnetometer full scale range - fixed at +/- 4800 uT 
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Compass Data Rate
 +
|-
 +
| colspan="2" | Sets the accelerometer data rate and bandwidth 
 +
|-
 +
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 +
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Simulation Type
 +
|-
 +
| colspan="2" |  
 +
|}==Macro reference==
  
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"

Revision as of 15:19, 20 January 2023

Author Matrix TSL
Version 1.1
Category Movement Orientation


Accel / Gyro / Mag 9-Axis (LSM9DS1) component

LSM9DS1 Combined 9-Axis Accelerometer, Gyroscope and Magnetometer sensors Useful for working out orientation data such as Pitch, Yaw and Roll.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_AccelMagGyro_LSM9DS1.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_AccelMagGyro_LSM9DS1.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples


Macro reference

Fc9-comp-macro.png Read_Register
Reads a value from a register on the accelerometer. 
Fc9-u8-icon.png - BYTE Reg
 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png ReadTemperature
Reads the temperature from the sensor and returns the value as an integer. 
Fc9-s16-icon.png - INT Return


Fc9-comp-macro.png SimSetTemperature
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT Temp
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png SimReset1G
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png UpdateGyroData
Reads from the gyroscope and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png Write_Register
Writes a data value to a specific register on the accelerometer 
Fc9-u8-icon.png - BYTE Reg
 
Fc9-u8-icon.png - BYTE Data
 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png UpdateCompassData
Reads from the compass and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png SimSetAccelerometer
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT X
 
Fc9-s16-icon.png - INT Y
 
Fc9-s16-icon.png - INT Z
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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 
Fc9-u8-icon.png - BYTE Axis
 
Fc9-s16-icon.png - INT Return


Fc9-comp-macro.png SimSetGyro
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT X
 
Fc9-s16-icon.png - INT Y
 
Fc9-s16-icon.png - INT Z
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png UpdateAccelerometerData
Reads from the accelerometer and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png SimSetCompass
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT X
 
Fc9-s16-icon.png - INT Y
 
Fc9-s16-icon.png - INT Z
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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  
Fc9-u8-icon.png - BYTE NumSamples
The number of readings to base the bearing on 
Fc9-u16-icon.png - UINT Return


Fc9-comp-macro.png Initialise
Sets up up the communication bus and initialises the accelerometer module. Returns 0 for success and > 0 for fail. 
Fc9-u8-icon.png - BYTE Return



Property reference

Fc9-prop-icon.png Properties
Fc9-conn-icon.png Connections
Fc9-type-16-icon.png Accel Gryo SA0 Pin
Determines the LSB of the I2C device address to allow up to two sensors to work together. 
Fc9-type-16-icon.png Magnetometer SA0 Pin
Determines the LSB of the I2C device address to allow up to two sensors to work together. 
Fc9-type-16-icon.png Channel
Channel selection 
Fc9-type-16-icon.png Baud Select
Baud rate option selector 
Fc9-type-14-icon.png Baud Rate
Baud rate to be used 
Fc9-type-7-icon.png 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.  
Fc9-type-5-icon.png SDA
Pin used for SDA (data signal) 
Fc9-type-5-icon.png SCL
Pin used for SCL (clock signal) 
Fc9-conn-icon.png Sensor Properties
Fc9-type-16-icon.png Accel Scale
Sets the output range of the accelerometer sensor 
Fc9-type-16-icon.png Accel Data Rate
Sets the accelerometer data rate and bandwidth 
Fc9-type-16-icon.png Gyro Scale
Sets the output scale of the gyro, measured in degrees per second 
Fc9-type-16-icon.png Gyro Data Rate
Sets the accelerometer data rate and bandwidth 
Fc9-type-16-icon.png Compass Scale
Sets the magnetometer full scale range - fixed at +/- 4800 uT 
Fc9-type-16-icon.png Compass Data Rate
Sets the accelerometer data rate and bandwidth 
Fc9-conn-icon.png Simulation
Fc9-type-16-icon.png Simulation Type
 

==Macro reference==

Fc9-comp-macro.png Read_Register
Reads a value from a register on the accelerometer. 
Fc9-u8-icon.png - BYTE Reg
 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png ReadTemperature
Reads the temperature from the sensor and returns the value as an integer. 
Fc9-s16-icon.png - INT Return


Fc9-comp-macro.png SimSetTemperature
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT Temp
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png SimReset1G
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png UpdateGyroData
Reads from the gyroscope and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png Write_Register
Writes a data value to a specific register on the accelerometer 
Fc9-u8-icon.png - BYTE Reg
 
Fc9-u8-icon.png - BYTE Data
 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png UpdateCompassData
Reads from the compass and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png SimSetAccelerometer
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT X
 
Fc9-s16-icon.png - INT Y
 
Fc9-s16-icon.png - INT Z
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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 
Fc9-u8-icon.png - BYTE Axis
 
Fc9-s16-icon.png - INT Return


Fc9-comp-macro.png SimSetGyro
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT X
 
Fc9-s16-icon.png - INT Y
 
Fc9-s16-icon.png - INT Z
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png UpdateAccelerometerData
Reads from the accelerometer and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png SimSetCompass
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT X
 
Fc9-s16-icon.png - INT Y
 
Fc9-s16-icon.png - INT Z
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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  
Fc9-u8-icon.png - BYTE NumSamples
The number of readings to base the bearing on 
Fc9-u16-icon.png - UINT Return


Fc9-comp-macro.png Initialise
Sets up up the communication bus and initialises the accelerometer module. Returns 0 for success and > 0 for fail. 
Fc9-u8-icon.png - BYTE Return



Property reference

Fc9-prop-icon.png Properties
Fc9-conn-icon.png Connections
Fc9-type-16-icon.png Accel Gryo SA0 Pin
Determines the LSB of the I2C device address to allow up to two sensors to work together. 
Fc9-type-16-icon.png Magnetometer SA0 Pin
Determines the LSB of the I2C device address to allow up to two sensors to work together. 
Fc9-type-16-icon.png Channel
Channel selection 
Fc9-type-16-icon.png Baud Select
Baud rate option selector 
Fc9-type-14-icon.png Baud Rate
Baud rate to be used 
Fc9-type-7-icon.png 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.  
Fc9-type-5-icon.png SDA
Pin used for SDA (data signal) 
Fc9-type-5-icon.png SCL
Pin used for SCL (clock signal) 
Fc9-conn-icon.png Sensor Properties
Fc9-type-16-icon.png Accel Scale
Sets the output range of the accelerometer sensor 
Fc9-type-16-icon.png Accel Data Rate
Sets the accelerometer data rate and bandwidth 
Fc9-type-16-icon.png Gyro Scale
Sets the output scale of the gyro, measured in degrees per second 
Fc9-type-16-icon.png Gyro Data Rate
Sets the accelerometer data rate and bandwidth 
Fc9-type-16-icon.png Compass Scale
Sets the magnetometer full scale range - fixed at +/- 4800 uT 
Fc9-type-16-icon.png Compass Data Rate
Sets the accelerometer data rate and bandwidth 
Fc9-conn-icon.png Simulation
Fc9-type-16-icon.png Simulation Type
 

==Macro reference==

Fc9-comp-macro.png Read_Register
Reads a value from a register on the accelerometer. 
Fc9-u8-icon.png - BYTE Reg
 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png ReadTemperature
Reads the temperature from the sensor and returns the value as an integer. 
Fc9-s16-icon.png - INT Return


Fc9-comp-macro.png SimSetTemperature
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT Temp
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png SimReset1G
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png UpdateGyroData
Reads from the gyroscope and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png Write_Register
Writes a data value to a specific register on the accelerometer 
Fc9-u8-icon.png - BYTE Reg
 
Fc9-u8-icon.png - BYTE Data
 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png UpdateCompassData
Reads from the compass and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png SimSetAccelerometer
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT X
 
Fc9-s16-icon.png - INT Y
 
Fc9-s16-icon.png - INT Z
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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 
Fc9-u8-icon.png - BYTE Axis
 
Fc9-s16-icon.png - INT Return


Fc9-comp-macro.png SimSetGyro
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT X
 
Fc9-s16-icon.png - INT Y
 
Fc9-s16-icon.png - INT Z
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png UpdateAccelerometerData
Reads from the accelerometer and updates the local XYZ variables. Returns 1 for new data and 0 for no new data 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png SimSetCompass
Allows the XYZ slider values to be set via the simulation 
Fc9-s16-icon.png - INT X
 
Fc9-s16-icon.png - INT Y
 
Fc9-s16-icon.png - INT Z
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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  
Fc9-u8-icon.png - BYTE NumSamples
The number of readings to base the bearing on 
Fc9-u16-icon.png - UINT Return


Fc9-comp-macro.png Initialise
Sets up up the communication bus and initialises the accelerometer module. Returns 0 for success and > 0 for fail. 
Fc9-u8-icon.png - BYTE Return



Property reference

Fc9-prop-icon.png Properties
Fc9-conn-icon.png Connections
Fc9-type-16-icon.png Accel Gryo SA0 Pin
Determines the LSB of the I2C device address to allow up to two sensors to work together. 
Fc9-type-16-icon.png Magnetometer SA0 Pin
Determines the LSB of the I2C device address to allow up to two sensors to work together. 
Fc9-type-16-icon.png Channel
Channel selection 
Fc9-type-16-icon.png Baud Select
Baud rate option selector 
Fc9-type-14-icon.png Baud Rate
Baud rate to be used 
Fc9-type-7-icon.png 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.  
Fc9-type-5-icon.png SDA
Pin used for SDA (data signal) 
Fc9-type-5-icon.png SCL
Pin used for SCL (clock signal) 
Fc9-conn-icon.png Sensor Properties
Fc9-type-16-icon.png Accel Scale
Sets the output range of the accelerometer sensor 
Fc9-type-16-icon.png Accel Data Rate
Sets the accelerometer data rate and bandwidth 
Fc9-type-16-icon.png Gyro Scale
Sets the output scale of the gyro, measured in degrees per second 
Fc9-type-16-icon.png Gyro Data Rate
Sets the accelerometer data rate and bandwidth 
Fc9-type-16-icon.png Compass Scale
Sets the magnetometer full scale range - fixed at +/- 4800 uT 
Fc9-type-16-icon.png Compass Data Rate
Sets the accelerometer data rate and bandwidth 
Fc9-conn-icon.png Simulation
Fc9-type-16-icon.png Simulation Type