|  |   | 
| (15 intermediate revisions by the same user not shown) | 
| Line 12: | Line 12: | 
|  |  |  |  | 
|  |  |  |  | 
| − | ==Temp / Humidity component== | + | ==Temp / Humidity (SHT21) component== | 
|  | Humidity and temperature sensor using an SHT21 IC connected via I2C. On screen GUI allows temperature and humidity values to be simulated, and will show all I2C communication in a console window. |  | Humidity and temperature sensor using an SHT21 IC connected via I2C. On screen GUI allows temperature and humidity values to be simulated, and will show all I2C communication in a console window. | 
|  |  |  |  | 
| Line 19: | Line 19: | 
|  |  |  |  | 
|  |  |  |  | 
| − | ''No detailed description exists yet for this component''
 |  | 
|  |  |  |  | 
| − | ==Examples==
 |  | 
|  |  |  |  | 
|  |  |  |  | 
|  |  |  |  | 
|  |  |  |  | 
| − | ''<span style="color:red;">No additional examples</span>''
 |  | 
|  |  |  |  | 
|  |  |  |  | 
| − | ==Downloadable 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;" | '''GetTemperatureReal'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Return temperature reading as a float value in degrees C 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] - 
 |  | 
| − | | 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;" | '''GetTemperatureData'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Returns the raw register pair value 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''GetTemperatureInt'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Return temperature reading as an integer value in degrees C 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] - 
 |  | 
| − | | 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;" | '''GetHumidityInt'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | returns the relative Humidity reading as an integer value 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] - 
 |  | 
| − | | 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;" | '''GetHumidityReal'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | returns the Humidity reading as a float value 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] - 
 |  | 
| − | | 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;" | '''GetHumidityData'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Returns the raw register pair value 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | 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;"
 | + | ''No detailed description exists yet for this component'' | 
| − | |-
 | + |   | 
| − | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 | + | ==Examples== | 
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
 | + |   | 
| − | |-
 | + |   | 
| − | | colspan="2" | Initialises the component ready for I2C communications 
 | + |   | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''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''
 |  | 
| − | |}
 |  | 
|  |  |  |  | 
|  |  |  |  | 
| − | {| 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:]] - 
 |  | 
| − | | width="90%" | X
 |  | 
| − | |-
 |  | 
| − | | colspan="2" |  
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:]] - 
 |  | 
| − | | width="90%" | Y
 |  | 
| − | |-
 |  | 
| − | | colspan="2" |  
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:]] - 
 |  | 
| − | | 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:]] - 
 |  | 
| − | | width="90%" | X
 |  | 
| − | |-
 |  | 
| − | | colspan="2" |  
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:]] - 
 |  | 
| − | | width="90%" | Y
 |  | 
| − | |-
 |  | 
| − | | colspan="2" |  
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:]] - 
 |  | 
| − | | 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''
 |  | 
| − | |}
 |  | 
|  |  |  |  | 
|  |  |  |  | 
| − | {| 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;" | '''IOSetOutputPin'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Sets the selected digital pin to an output and assigns the output state. 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Pin
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Range: 0-29 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:]] - 
 |  | 
| − | | width="90%" | State
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Range: 0-1 
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''UARTReceive'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Receives a data byte from the UART. Recommend calling the UARTCheckRx function first to ensure data is available. 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Channel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Channel Index: Range 0 - UART Bus Count - 1 
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''ADCSampleAverage10'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Reads the voltage present on an Analog pin as an 10-bit value range 0-1023. Performs the selected number of samples with the selected time in microseconds in between samples 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | ADCChannel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Range: 0, 3-7 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | SampleCount
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Range: 1- 100 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | SampleDelay
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Delay in us between each sample 
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''OneWireScanBus'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Scans the one wire bus to detect all connected devices. Returns the number of one wire devices found. 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Channel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Channel Index: Range 0 - I2C Bus Count - 1 
 |  | 
| − | |-
 |  | 
| − | | 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''
 |  | 
| − | |}
 |  | 
|  |  |  |  | 
|  | + | ''<span style="color:red;">No additional examples</span>'' | 
|  |  |  |  | 
| − | {| 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;" | '''SPIInitialise'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Initialsie the SPI module ready for communications 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Channel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Channel Index: Range 0 - SPI Bus Count - 1 
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''OneWireReceiveByte'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Receives a byte from the one wire bus a bit at a time 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Channel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Channel Index: Range 0 - I2C Bus Count - 1 
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''I2CSend'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Transmit a byte using the I2C bus 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Channel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Channel Index: Range 0 - I2C Bus Count - 1 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | DataOut
 |  | 
| − | |-
 |  | 
| − | | colspan="2" |  
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] - 
 |  | 
| − | | 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;" | '''UARTSend'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Send a byte via the UART module 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Channel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Channel Index: Range 0 - UART Bus Count - 1 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Data
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Data Byte to send. Range: 0-255 
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''OneWireGetDeviceCount'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Returns the number of devices found by the last ScanBus operation. 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Channel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Channel Index: Range 0 - I2C Bus Count - 1 
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''PWMSetPrescaler'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Sets the prescaler for the PWM output 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Channel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Range: 0 - 11 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Prescaler
 |  | 
| − | |-
 |  | 
| − | | colspan="2" |  
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Period
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''PWMEnable'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Enable a PWM output 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | Channel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Range: 0-11 
 |  | 
| − | |-
 |  | 
| − | | 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''
 |  | 
| − | |}
 |  | 
|  |  |  |  | 
|  | + | ==Macro reference== | 
|  |  |  |  | 
|  | + | ===GetHumidityInt=== | 
|  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |  | {| 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" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | 
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ADCSampleArray10''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetHumidityInt''' | 
|  | |- |  | |- | 
| − | | colspan="2" | Reads thevoltage present on an Analog pin as an10-bit valuerange 0-1023 Performs the selected number of samples with the selected time in microseconds in between samples and returns each sample in a single packet  | + | | colspan="2" | returns the relative Humidity reading as an integer value  | 
|  | |- |  | |- | 
|  | |- |  | |- | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT | 
| − | | width="90%" | ADCChannel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Range: 0, 3-7 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | SampleCount
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Range: 1- 32 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
 |  | 
| − | | width="90%" | SampleDelay
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Delay in us between each sample 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
 |  | 
| − | | width="90%" | Samples
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | 10-bit samples returned from the function 
 |  | 
| − | |-
 |  | 
| − | | 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'' |  | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | 
|  | |} |  | |} | 
|  |  |  |  | 
|  |  |  |  | 
|  | + | ===GetHumidityReal=== | 
|  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |  | {| 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" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | 
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ADCSampleAverage8''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetHumidityReal''' | 
|  | |- |  | |- | 
| − | | colspan="2" | Reads thevoltage present on an Analog pin asan 8-bit valuerange 0-255 Performs the selected number of samples with the selected time in microseconds in between samples  | + | | colspan="2" | returns the Humidity reading as a float value  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | ADCChannel
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Range: 0, 3-7 
 |  | 
|  | |- |  | |- | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | SampleCount
 |  | 
|  | |- |  | |- | 
| − | | colspan="2" | Range: 1- 100 
 | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | SampleDelay
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Delay in us between each sample 
 |  | 
| − | |-
 |  | 
| − | | 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'' |  | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | 
|  | |} |  | |} | 
|  |  |  |  | 
|  |  |  |  | 
|  | + | ===GetTemperatureInt=== | 
|  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |  | {| 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" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | 
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTemperatureInt''' | 
|  | |- |  | |- | 
| − | | colspan="2" | Initialise the comms to the Arduino board ready for commands to be sent.  | + | | colspan="2" | Return temperature reading as an integer value in degrees C  | 
|  | |- |  | |- | 
|  | |- |  | |- | 
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] -VOID | + | | 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'' |  | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | 
|  | |} |  | |} | 
|  |  |  |  | 
|  |  |  |  | 
|  | + | ===GetTemperatureReal=== | 
|  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |  | {| 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" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | 
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PWMEnable''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTemperatureReal''' | 
|  | |- |  | |- | 
| − | | colspan="2" | Allows pulse width modulated transistor outputs to be switched on or off. Bit 0 = Enable AB Bit 1 = A / Bit 2 = B Bit 3 = C/ Bit 4 = D Bit 5 = Enable CD  | + | | colspan="2" | Return temperature reading as a float value in degrees C  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 |  | 
| − | | width="90%" | EnableMask
 |  | 
|  | |- |  | |- | 
| − | | colspan="2" | Range 0-63 or 0b00000 to 0b111111 
 |  | 
|  | |- |  | |- | 
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] -VOID | + | | 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'' | 
|  | |} |  | |} | 
|  |  |  |  | 
|  |  |  |  | 
|  | + | ===Initialise=== | 
|  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | 
|  | |- |  | |- | 
| Line 565: | Line 145: | 
|  | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise''' |  | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise''' | 
|  | |- |  | |- | 
| − | | colspan="2" |   | + | | colspan="2" | Initialises the component ready for I2C communications  | 
|  | |- |  | |- | 
|  | |- |  | |- | 
| Line 571: | Line 151: | 
|  | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |  | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | 
|  | |} |  | |} | 
| − | 
 |  | 
| − | 
 |  | 
|  |  |  |  | 
|  |  |  |  | 
| Line 592: | Line 170: | 
|  | |- |  | |- | 
|  | | colspan="2" | Pin used for SDA (data signal)  |  | | colspan="2" | Pin used for SDA (data signal)  | 
|  | + | |- | 
|  | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | 
|  | + | | width="90%" | SDA Remap Pin | 
|  | + | |- | 
|  | + | | colspan="2" |   | 
|  | |- |  | |- | 
|  | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] |  | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | 
| Line 597: | Line 180: | 
|  | |- |  | |- | 
|  | | colspan="2" | Pin used for SCL (clock signal)  |  | | colspan="2" | Pin used for SCL (clock signal)  | 
|  | + | |- | 
|  | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | 
|  | + | | width="90%" | SCL Remap Pin | 
|  | + | |- | 
|  | + | | colspan="2" |   | 
|  | |- |  | |- | 
|  | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] |  | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | 
| Line 613: | Line 201: | 
|  | | 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" | [[File:Fc9-type-7-icon.png]]
 | + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | 
| − | | width="90%" | Scope Traces
 | + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation | 
| − | |-
 |  | 
| − | | colspan="2" | Selects if the component pin connections are automatically generated on the data recorder window or not. Yes: Automatically add the component pins to a group on the data recorder which will reflect the sim data during simultion. No: Do not show the pin signals on the data recorder window. 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 |  | 
| − | | width="90%" | Console Data
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Selects if the console data is automatically generated or not 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 |  | 
| − | | width="90%" | API
 |  | 
| − | |-
 |  | 
| − | | colspan="2" |  
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
 |  | 
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Connections''' 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]] |  | 
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" |'''Simulations'''  |  | 
|  | |- |  | |- | 
|  | |- |  | |- | 
| Line 641: | Line 210: | 
|  | | colspan="2" |   |  | | colspan="2" |   | 
|  | |} |  | |} | 
|  | + |  | 
|  | + | ==Component Source Code== | 
|  | + |  | 
|  | + | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_Humidity_SHT21.fcfx FC_Comp_Source_Humidity_SHT21.fcfx] | 
|  | + |  | 
|  | + | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_Humidity_SHT21.fcfx FC_Comp_Source_Humidity_SHT21.fcfx] |