Jump to content

Component: Barometer (MS5637) (Environmental): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(12 intermediate revisions by 2 users not shown)
Line 16: Line 16:


==Component Source Code==
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_Pressure_Sensor_MS5637.fcfx FC_Comp_Source_Pressure_Sensor_MS5637.fcfx]


Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_Pressure_Sensor_MS5637.fcfx FC_Comp_Source_Pressure_Sensor_MS5637.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_Pressure_Sensor_MS5637.fcfx FC_Comp_Source_Pressure_Sensor_MS5637.fcfx]


==Detailed description==
==Detailed description==




Line 42: Line 50:


==Examples==
==Examples==




Line 65: Line 79:




==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;" | '''ReadPressureFloat'''
|-
| colspan="2" | Reads the pressure as a floating point value in Bars. Resultion sets the return bit value and conversion time. Calls the ReadPressureRaw function and then converts to a meaningful value. 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Resolution
|-
| colspan="2" | Range 0-5 
|-
| 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''
|}




{| 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;" | '''Reset'''
|-
| colspan="2" | Resets the device 
|-
|-
| 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;" | '''ReadTemperatureFloat'''
|-
| colspan="2" | Reads the temperature as a floating point value in °C. Resultion sets the return bit value and conversion time. Calls the ReadTemperatureRaw function and then converts to a meaningful value. 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Resolution
|-
| colspan="2" | Range 0-5 
|-
| 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''
|}




{| 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;" | '''ReadPressureRaw'''
|-
| colspan="2" | Reads the pressure as a digital 32-bit value. Resultion sets the return bit value and conversion time. 0=0.11mBar / 1=0.062mBar / 2=0.039mBar 3=0.028mBar / 4=0.021mBar / 5=0.016mBar 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Resolution
|-
| colspan="2" | Range 0-5 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u32-icon.png]] - ULONG
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
==Macro reference==
 
===Initialise===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadTemperatureRaw'''
| width="90%" class="mtx-class-macrohead" | '''Initialise'''
|-
|-
| colspan="2" | Reads the temperature as a digital 32-bit value. Resultion sets the return bit value and conversion time. 0=0.012°C / 1=0.009°C / 2=0.006°C 3=0.004°C / 4=0.003°C / 5=0.002°C 
| colspan="2" | Stes up the I2C bus and initialises the termperature sensor ready for use. 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" | Resolution
|-
| colspan="2" | Range 0-5 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ReadPROM===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadPROM'''
| width="90%" class="mtx-class-macrohead" | '''ReadPROM'''
|-
|-
| colspan="2" | Reads a single 16-bit value from the PROM calibration data. 
| colspan="2" | Reads a single 16-bit value from the PROM calibration data. 
Line 170: Line 124:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ReadPressureFloat===
|-
{| class="mtx-class-macrotable wikitable"
| 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" | Stes up the I2C bus and initialises the termperature sensor ready for use. 
|-
|-
| 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="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;" | I2C Properties
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Channel
|-
| colspan="2" | Channel selection 
|-
| 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" | [[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" 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-7-icon.png]]
| width="90%" | Simulate Comms
|-
| colspan="2" | Allows the simulation data to come from the panel GUI or relayed via an injector component. 
|}==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="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadPressureFloat'''
| width="90%" class="mtx-class-macrohead" | '''ReadPressureFloat'''
|-
|-
| colspan="2" | Reads the pressure as a floating point value in Bars. Resultion sets the return bit value and conversion time. Calls the ReadPressureRaw function and then converts to a meaningful value. 
| colspan="2" | Reads the pressure as a floating point value in Bars. Resultion sets the return bit value and conversion time. Calls the ReadPressureRaw function and then converts to a meaningful value. 
Line 255: Line 143:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ReadPressureRaw===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Reset'''
| width="90%" class="mtx-class-macrohead" | '''ReadPressureRaw'''
|-
|-
| colspan="2" | Resets the device 
| colspan="2" | Reads the pressure as a digital 32-bit value. Resultion sets the return bit value and conversion time. 0=0.11mBar / 1=0.062mBar / 2=0.039mBar 3=0.028mBar / 4=0.021mBar / 5=0.016mBar 
|-
|-
| 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;" | '''ReadTemperatureFloat'''
|-
| colspan="2" | Reads the temperature as a floating point value in °C. Resultion sets the return bit value and conversion time. Calls the ReadTemperatureRaw function and then converts to a meaningful value. 
|-
|-
|-
|-
Line 281: Line 157:
| colspan="2" | Range 0-5 
| colspan="2" | Range 0-5 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u32-icon.png]] - ULONG
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ReadTemperatureFloat===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadPressureRaw'''
| width="90%" class="mtx-class-macrohead" | '''ReadTemperatureFloat'''
|-
|-
| colspan="2" | Reads the pressure as a digital 32-bit value. Resultion sets the return bit value and conversion time. 0=0.11mBar / 1=0.062mBar / 2=0.039mBar 3=0.028mBar / 4=0.021mBar / 5=0.016mBar 
| colspan="2" | Reads the temperature as a floating point value in °C. Resultion sets the return bit value and conversion time. Calls the ReadTemperatureRaw function and then converts to a meaningful value. 
|-
|-
|-
|-
Line 299: Line 176:
| colspan="2" | Range 0-5 
| colspan="2" | Range 0-5 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u32-icon.png]] - ULONG
| 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''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ReadTemperatureRaw===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadTemperatureRaw'''
| width="90%" class="mtx-class-macrohead" | '''ReadTemperatureRaw'''
|-
|-
| colspan="2" | Reads the temperature as a digital 32-bit value. Resultion sets the return bit value and conversion time. 0=0.012°C / 1=0.009°C / 2=0.006°C 3=0.004°C / 4=0.003°C / 5=0.002°C 
| colspan="2" | Reads the temperature as a digital 32-bit value. Resultion sets the return bit value and conversion time. 0=0.012°C / 1=0.009°C / 2=0.006°C 3=0.004°C / 4=0.003°C / 5=0.002°C 
Line 322: Line 200:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Reset===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadPROM'''
| width="90%" class="mtx-class-macrohead" | '''Reset'''
|-
|-
| colspan="2" | Reads a single 16-bit value from the PROM calibration data. 
| colspan="2" | Resets the device 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Address
|-
| colspan="2" | Range 0-6 
|-
| 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" | Stes up the I2C bus and initialises the termperature sensor ready for use. 
|-
|-
|-
|-
Line 351: Line 212:
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




==Property reference==
==Property reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
|-
|-
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | I2C Properties
| width="90%" class="mtx-class-propfolder" | I2C Properties
|-
|-
|-
|-
Line 397: Line 256:
| 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.  
| 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" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation
| width="90%" class="mtx-class-propfolder" | Simulation
|-
|-
|-
|-

Latest revision as of 14:36, 13 July 2026

Author Matrix TSL
Version 1.0
Category Environmental


Barometer (MS5637) component

A small PCB surface mount barometric pressure sensor with a I2C bus interface. Pressure range 0 to 30 Bar. Temperature range -20 to +85 °C.

Component Source Code

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

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

Detailed description

No detailed description exists yet for this component

Examples

No additional examples







Macro reference

Initialise

Initialise
Stes up the I2C bus and initialises the termperature sensor ready for use. 
- VOID Return


ReadPROM

ReadPROM
Reads a single 16-bit value from the PROM calibration data. 
- BYTE Address
Range 0-6 
- UINT Return


ReadPressureFloat

ReadPressureFloat
Reads the pressure as a floating point value in Bars. Resultion sets the return bit value and conversion time. Calls the ReadPressureRaw function and then converts to a meaningful value. 
- BYTE Resolution
Range 0-5 
- FLOAT Return


ReadPressureRaw

ReadPressureRaw
Reads the pressure as a digital 32-bit value. Resultion sets the return bit value and conversion time. 0=0.11mBar / 1=0.062mBar / 2=0.039mBar 3=0.028mBar / 4=0.021mBar / 5=0.016mBar 
- BYTE Resolution
Range 0-5 
- ULONG Return


ReadTemperatureFloat

ReadTemperatureFloat
Reads the temperature as a floating point value in °C. Resultion sets the return bit value and conversion time. Calls the ReadTemperatureRaw function and then converts to a meaningful value. 
- BYTE Resolution
Range 0-5 
- FLOAT Return


ReadTemperatureRaw

ReadTemperatureRaw
Reads the temperature as a digital 32-bit value. Resultion sets the return bit value and conversion time. 0=0.012°C / 1=0.009°C / 2=0.006°C 3=0.004°C / 4=0.003°C / 5=0.002°C 
- BYTE Resolution
Range 0-5 
- LONG Return


Reset

Reset
Resets the device 
- VOID Return


Property reference

Properties
I2C Properties
Channel
Channel selection 
SDA
Pin used for SDA (data signal) 
SCL
Pin used for SCL (clock signal) 
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.  
Simulation
Simulate Comms
Allows the simulation data to come from the panel GUI or relayed via an injector component.