Difference between revisions of "Component: Barometer (BME280) (Environmental)"
Line 15: | Line 15: | ||
A small PCB surface mount barometric pressure sensor with a I2C bus interface. Pressure range 300 to 1100 hPa. Temperature range -40 to +85 °C. Works with I2C interface only. | A small PCB surface mount barometric pressure sensor with a I2C bus interface. Pressure range 300 to 1100 hPa. Temperature range -40 to +85 °C. Works with I2C interface only. | ||
− | ==Component | + | ==Component Source Code== |
− | + | Please click here for the component source code: [https://www.flowcode.co.uk/wikicopy/componentsource/FC_Comp_Source_Pressure_Sensor_BME280.fcfx FC_Comp_Source_Pressure_Sensor_BME280.fcfx] | |
==Detailed description== | ==Detailed description== | ||
+ | |||
+ | |||
Line 32: | Line 34: | ||
==Examples== | ==Examples== | ||
+ | |||
+ | |||
Line 203: | Line 207: | ||
|- | |- | ||
|- | |- | ||
− | | width="10%" align="center" | [[File:Fc9- | + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] |
− | | width="90%" | | + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections |
|- | |- | ||
− | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
− | | width="90%" | | + | | width="90%" | Slave Address |
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
− | | width="90%" | | + | | width="90%" | Channel |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Channel selection |
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
− | | width="90%" | | + | | width="90%" | Baud Select |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Baud rate option selector |
|- | |- | ||
− | | width="10%" align="center" | [[File:Fc9-type- | + | | width="10%" align="center" | [[File:Fc9-type-14-icon.png]] |
− | | width="90%" | | + | | width="90%" | Baud Rate |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Baud rate to be used |
|- | |- | ||
− | | width="10%" align="center" | [[File:Fc9-type- | + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] |
− | | width="90%" | | + | | width="90%" | Stop Delay |
|- | |- | ||
− | | colspan="2" | | + | | 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- | + | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] |
− | | width="90%" | | + | | width="90%" | SDA |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Pin used for SDA (data signal) |
|- | |- | ||
− | | width="10%" align="center" | [[File:Fc9-type- | + | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] |
− | | width="90%" | | + | | width="90%" | SCL |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Pin used for SCL (clock signal) |
|- | |- | ||
− | | width="10%" align="center" | [[File:Fc9- | + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] |
− | | width="90%" | | + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Sensor Options |
|- | |- | ||
− | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
− | | width="90%" | | + | | width="90%" | Compensation |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Compensation formulas in double precision floating point or 32 bit fixed point |
|- | |- | ||
− | | width="10%" align="center | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] |
− | | width="90% | + | | width="90%" | Humidity Oversampling |
|- | |- | ||
+ | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
− | | width="90%" | | + | | width="90%" | Pressure Oversampling |
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
− | | width="90%" | | + | | width="90%" | Temperature Oversampling |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | |
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
− | | width="90%" | | + | | width="90%" | Mode |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | |
|- | |- | ||
− | | width="10%" align="center" | [[File:Fc9-type- | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] |
− | | width="90%" | | + | | width="90%" | Standby Normal Mode (ms) |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | |
|- | |- | ||
− | | width="10%" align="center" | [[File:Fc9-type- | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] |
− | | width="90%" | | + | | width="90%" | Filter Coefficient |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | | width="10%" align="center" style="background-color:# | + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] |
− | | width="90%" style="background-color:# | + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation |
|- | |- | ||
|- | |- |
Revision as of 17:50, 9 November 2022
Author | Matrix TSL |
Version | 1.3 |
Category | Environmental |
Contents
Barometer component
A small PCB surface mount barometric pressure sensor with a I2C bus interface. Pressure range 300 to 1100 hPa. Temperature range -40 to +85 °C. Works with I2C interface only.
Component Source Code
Please click here for the component source code: FC_Comp_Source_Pressure_Sensor_BME280.fcfx
Detailed description
No detailed description exists yet for this component
Examples
BME280 Barometer plus Altitude v1.0
This example reads and displays the pressure, temperature & humidity.
If the pressure is increasing then Rise will be displayed.
Alternatively if the pressure is falling, then Fall will be displayed.
The altitude displayed is calculated based on the current pressure reading.
What makes the altitude useful is the ability to tare it, then after going up or downstairs for example the feet & meters are displayed.
Note since the altitude is calculated based on pressure, then if the sensor is left at the same height, the height displayed can be different each day.
Circuit Diagram
Downloadable macro reference
![]() |
ReadPressureFloat |
Reads the pressure as a floating point value in Bars. Calls the ReadPressureRaw function and then converts to a meaningful value. | |
![]() |
Return |
![]() |
Reset |
Resets the device | |
![]() |
Return |
![]() |
I2C_Read_Register |
Reads a byte value from a register on the device | |
![]() |
Address |
![]() |
Return |
![]() |
Forced_Read |
![]() |
Return |
![]() |
I2C_Write_Register |
Writes a byte value to a register on the device | |
![]() |
Address |
![]() |
Value |
![]() |
Return |
![]() |
ReadHumidityFloat |
Reads the humidity as a floating point value in percentage 0-100%. Calls the ReadHumidityRaw function and then converts to a meaningful value. | |
![]() |
Return |
![]() |
Uninit |
Uninitialse and release I2C resources | |
![]() |
Return |
![]() |
Initialise |
Starts up the I2C bus and initialises the pressure sensor ready for use. Returns 1 for a sucessful startup. Returns 0 for a failed startup or no device detected. | |
![]() |
Return |