Component: Barometer (DPS310) (Environmental): Difference between revisions
Appearance
XML import |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (21 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
{| style="width:50%" | |||
{| | |||
|- | |- | ||
| width="20%" style="color: gray;" | Author | | width="20%" style="color:gray;" | Author | ||
| Matrix TSL | | Matrix TSL | ||
|- | |- | ||
| width="20%" style="color: gray;" | Version | | width="20%" style="color:gray;" | Version | ||
| 1.0 | | 1.0 | ||
|- | |- | ||
| width="20%" style="color: gray;" | Category | | width="20%" style="color:gray;" | Category | ||
| Environmental | | Environmental | ||
|} | |} | ||
==Barometer (DPS310) component== | |||
A barometric air pressure sensor with high accuracy and low current consumption. Capable of sensing air pressure and temperature. Based on an I2C bus connection. | |||
== | ==Component Source Code== | ||
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_Pressure_Sensor_DPS310.fcfx FC_Comp_Source_Pressure_Sensor_DPS310.fcfx] | |||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_Pressure_Sensor_DPS310.fcfx FC_Comp_Source_Pressure_Sensor_DPS310.fcfx] | |||
== | ==Detailed description== | ||
''No detailed description exists yet for this component'' | |||
=== | ==Examples== | ||
'' | ''<span style="color:red;">No additional examples</span>'' | ||
==Macro reference== | |||
:[[ | ===ConfigurePressure=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''ConfigurePressure''' | |||
|- | |||
| colspan="2" | Configures the pressure sensor sample rate and over sampling count | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Rate | |||
|- | |||
| colspan="2" | Range: 0-7, 0=1Hz, 1=2Hz, 2=4Hz etc | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Oversample | |||
|- | |||
| colspan="2" | Range: 0-7, 0=1Samples, 1=2Samples, 2=4Samples etc | |||
|- | |||
| 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'' | |||
|} | |||
===ConfigureTemperature=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''ConfigureTemperature''' | |||
|- | |||
| colspan="2" | Configures the temperature sensor sample rate and over sampling count | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Rate | |||
|- | |||
| colspan="2" | Range: 0-7, 0=1Hz, 1=2Hz, 2=4Hz etc | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Oversample | |||
|- | |||
| colspan="2" | Range: 0-7, 0=1Samples, 1=2Samples, 2=4Samples etc | |||
|- | |||
| 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'' | |||
|} | |||
'' | ===Initialise=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Initialise''' | |||
|- | |||
| colspan="2" | Starts up the I2C ready to communicate with the sensor. Sets the selected rates and operational mode. Returns 1 if the sensor has been found and initialised. | |||
|- | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
== | ===ReadAltitude=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''ReadAltitude''' | |||
|- | |||
| colspan="2" | Reads the pressure measurement from the last SampleSensor macro and converts the pressure reading into an altitude reading. | |||
|- | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
'' | ===ReadPressure=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''ReadPressure''' | |||
|- | |||
| colspan="2" | Reads the pressure measurement from the last SampleSensor macro | |||
|- | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
===ReadRegister=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''ReadRegister''' | |||
|- | |||
| colspan="2" | Reads a byte from a register | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Address | |||
|- | |||
| 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'' | |||
|} | |||
===ReadTemperature=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''ReadTemperature''' | |||
|- | |||
| colspan="2" | Reads the temperature measurement from the last SampleSensor macro | |||
|- | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
===SampleSensor=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''SampleSensor''' | |||
|- | |||
| colspan="2" | Checks to see if new data is available for temperature or pressure and collects it. Returns 0 if no new data is available Returns 1 for pressure, 2 for temperature and 3 for both. | |||
|- | |||
|- | |||
| 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'' | |||
|} | |||
===SetMode=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''SetMode''' | |||
|- | |||
| colspan="2" | Sets the operational mode of the sensor to be continous or one shot | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Mode | |||
|- | |||
| 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'' | |||
|} | |||
'' | ===WriteRegister=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''WriteRegister''' | |||
|- | |||
| colspan="2" | Writes a byte to a register | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Address | |||
|- | |||
| 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-void-icon.png]] - VOID | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
==Property reference== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Properties''' | |||
|- | |||
|- | |||
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | |||
| width="90%" class="mtx-class-propfolder" | Device Settings | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Device Address | |||
Channel selection | |- | ||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Measurement Rate | |||
|- | |||
Baud rate option selector | | colspan="2" | | ||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Oversample Rate | |||
|- | |||
| colspan="2" | | |||
Baud rate to be used | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Operational Mode | |||
|- | |||
| colspan="2" | | |||
|- | |||
Pin used for SDA (data signal) | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" class="mtx-class-propfolder" | Connections | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Channel | |||
Pin used for SCL (clock signal) | |- | ||
| colspan="2" | Channel selection | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Baud Select | |||
|- | |||
On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not | | colspan="2" | Baud rate option selector | ||
|- | |||
a 10ms delay between an I2C stop event and the next I2C start event. | | width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | ||
| width="90%" | Baud Rate | |||
|- | |||
| colspan="2" | Baud rate to be used | |||
Most modern microcontrollers will not have a problem so this property can be disabled to speed up the | |- | ||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
I2C communications. | | width="90%" | SDA | ||
|- | |||
| colspan="2" | Pin used for SDA (data signal) | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| width="90%" | SCL | |||
No: Provides simulation using the panel component sliders. | |- | ||
| colspan="2" | Pin used for SCL (clock signal) | |||
Yes: Communicates via an API Slave device to real world hardware, shows the results using the panel component sliders. | |- | ||
| 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" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | |||
| width="90%" class="mtx-class-propfolder" | Simulation | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |||
| width="90%" | Simulate Comms | |||
|- | |||
| colspan="2" | No: Provides simulation using the panel component sliders. Yes: Communicates via an API Slave device to real world hardware, shows the results using the panel component sliders. | |||
|} | |||
Latest revision as of 14:37, 13 July 2026
| Author | Matrix TSL |
| Version | 1.0 |
| Category | Environmental |
Barometer (DPS310) component
A barometric air pressure sensor with high accuracy and low current consumption. Capable of sensing air pressure and temperature. Based on an I2C bus connection.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_Pressure_Sensor_DPS310.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_Pressure_Sensor_DPS310.fcfx
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Macro reference
ConfigurePressure
ConfigureTemperature
Initialise
| Initialise | |
| Starts up the I2C ready to communicate with the sensor. Sets the selected rates and operational mode. Returns 1 if the sensor has been found and initialised. | |
| Return | |
ReadAltitude
| ReadAltitude | |
| Reads the pressure measurement from the last SampleSensor macro and converts the pressure reading into an altitude reading. | |
| Return | |
ReadPressure
| ReadPressure | |
| Reads the pressure measurement from the last SampleSensor macro | |
| Return | |
ReadRegister
| ReadRegister | |
| Reads a byte from a register | |
| Address | |
| Return | |
ReadTemperature
| ReadTemperature | |
| Reads the temperature measurement from the last SampleSensor macro | |
| Return | |
SampleSensor
SetMode
| SetMode | |
| Sets the operational mode of the sensor to be continous or one shot | |
| Mode | |
| Return | |
WriteRegister
| WriteRegister | |
| Writes a byte to a register | |
| Address | |
| Data | |
| Return | |