Jump to content

Component: ADC Template 2D (Analog Input): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(7 intermediate revisions by 2 users not shown)
Line 14: Line 14:
==ADC Template 2D component==
==ADC Template 2D component==
Base ADC component with no graphical interface. Contains all of the embedded side component calls to provide an ADC interface suitable for  wrapping with a new ADC style component.   
Base ADC component with no graphical interface. Contains all of the embedded side component calls to provide an ADC interface suitable for  wrapping with a new ADC style component.   
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_temp/adc_Base_2dgdi.fcfx FC_Comp_Source_temp/adc_Base_2dgdi.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_temp/adc_Base_2dgdi.fcfx FC_Comp_Source_temp/adc_Base_2dgdi.fcfx]


==Detailed description==
==Detailed description==
Line 50: Line 44:


==Examples==
==Examples==




Line 72: Line 68:


===GetAverageByte===
===GetAverageByte===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''GetAverageByte'''
| width="90%" class="mtx-class-macrohead" | '''GetAverageByte'''
|-
|-
| colspan="2" | Function call to read the ADC as a byte average sample over time  
| colspan="2" | Function call to read the ADC as a byte average sample over time  
Line 96: Line 92:


===GetAverageInt===
===GetAverageInt===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''GetAverageInt'''
| width="90%" class="mtx-class-macrohead" | '''GetAverageInt'''
|-
|-
| colspan="2" | Function call to read the ADC as a full width average sample over time  
| colspan="2" | Function call to read the ADC as a full width average sample over time  
Line 120: Line 116:


===GetByte===
===GetByte===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''GetByte'''
| width="90%" class="mtx-class-macrohead" | '''GetByte'''
|-
|-
| colspan="2" | Blocking call to read the ADC as a byte  
| colspan="2" | Blocking call to read the ADC as a byte  
Line 134: Line 130:


===GetInt===
===GetInt===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''GetInt'''
| width="90%" class="mtx-class-macrohead" | '''GetInt'''
|-
|-
| colspan="2" | Blocking call to read the ADC at full bit depth  
| colspan="2" | Blocking call to read the ADC at full bit depth  
Line 148: Line 144:


===GetSampleBits===
===GetSampleBits===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''GetSampleBits'''
| width="90%" class="mtx-class-macrohead" | '''GetSampleBits'''
|-
|-
| colspan="2" | Gets the number of bits per sample 
| colspan="2" | Gets the number of bits per sample 
Line 162: Line 158:


===GetSpeedFilter===
===GetSpeedFilter===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''GetSpeedFilter'''
| width="90%" class="mtx-class-macrohead" | '''GetSpeedFilter'''
|-
|-
| colspan="2" | Gets the Conversion speed filter string Use in Component.Property.SetFilter() 
| colspan="2" | Gets the Conversion speed filter string Use in Component.Property.SetFilter() 
Line 176: Line 172:


===GetString===
===GetString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''GetString'''
| width="90%" class="mtx-class-macrohead" | '''GetString'''
|-
|-
| colspan="2" | Reads the ADC as a direct voltage and returns as a string 
| colspan="2" | Reads the ADC as a direct voltage and returns as a string 
Line 190: Line 186:


===GetVoltage===
===GetVoltage===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''GetVoltage'''
| width="90%" class="mtx-class-macrohead" | '''GetVoltage'''
|-
|-
| colspan="2" | Reads the ADC as a direct voltage 
| colspan="2" | Reads the ADC as a direct voltage 
Line 204: Line 200:


===RawAverageByte===
===RawAverageByte===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''RawAverageByte'''
| width="90%" class="mtx-class-macrohead" | '''RawAverageByte'''
|-
|-
| colspan="2" | Background call to read the ADC as a byte average sample over time Call Enable() before this 
| colspan="2" | Background call to read the ADC as a byte average sample over time Call Enable() before this 
Line 228: Line 224:


===RawAverageInt===
===RawAverageInt===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''RawAverageInt'''
| width="90%" class="mtx-class-macrohead" | '''RawAverageInt'''
|-
|-
| colspan="2" | Background call to read the ADC as a full width average sample over time Call Enable() before this 
| colspan="2" | Background call to read the ADC as a full width average sample over time Call Enable() before this 
Line 252: Line 248:


===RawDisable===
===RawDisable===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''RawDisable'''
| width="90%" class="mtx-class-macrohead" | '''RawDisable'''
|-
|-
| colspan="2" | Disables the previously enabled ADC channel and converts back to digital mode. 
| colspan="2" | Disables the previously enabled ADC channel and converts back to digital mode. 
Line 266: Line 262:


===RawEnable===
===RawEnable===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''RawEnable'''
| width="90%" class="mtx-class-macrohead" | '''RawEnable'''
|-
|-
| colspan="2" | Enables and configures the ADC channel to be an analogue input. Only one ADC channel can be enabled at a time. Any RAW functions will reference the last enabled channel only. 
| colspan="2" | Enables and configures the ADC channel to be an analogue input. Only one ADC channel can be enabled at a time. Any RAW functions will reference the last enabled channel only. 
Line 280: Line 276:


===RawSampleByte===
===RawSampleByte===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''RawSampleByte'''
| width="90%" class="mtx-class-macrohead" | '''RawSampleByte'''
|-
|-
| colspan="2" | Background call to read the ADC as a byte Call Enable() before this 
| colspan="2" | Background call to read the ADC as a byte Call Enable() before this 
Line 294: Line 290:


===RawSampleInt===
===RawSampleInt===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''RawSampleInt'''
| width="90%" class="mtx-class-macrohead" | '''RawSampleInt'''
|-
|-
| colspan="2" | Background call to read the ADC at full bit depth Call Enable() first 
| colspan="2" | Background call to read the ADC at full bit depth Call Enable() first 
Line 308: Line 304:


===SetChannel===
===SetChannel===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''SetChannel'''
| width="90%" class="mtx-class-macrohead" | '''SetChannel'''
|-
|-
| colspan="2" | Sets the channel ID for the component 
| colspan="2" | Sets the channel ID for the component 
Line 327: Line 323:


===SetProperties===
===SetProperties===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''SetProperties'''
| width="90%" class="mtx-class-macrohead" | '''SetProperties'''
|-
|-
| colspan="2" | Set the VRef options and voltage, ConvSpeed and AcqTime for the ADC component. 
| colspan="2" | Set the VRef options and voltage, ConvSpeed and AcqTime for the ADC component. 
Line 362: Line 358:
==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;" | Connections
| width="90%" class="mtx-class-propfolder" | Connections
|-
|-
|-
|-
Line 377: Line 373:
| colspan="2" | Analogue Input Channel - Which pin is the analogue input connected to? 
| colspan="2" | Analogue Input Channel - Which pin is the analogue input connected to? 
|-
|-
| 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;" | Settings
| width="90%" class="mtx-class-propfolder" | Settings
|-
|-
|-
|-
Line 406: Line 402:
| colspan="2" | Maximum number of digital bits the ADC can sample. 8 bit = ADC range 0 - 255 10 bit = ADC range 0 - 1023  12 bit = ADC range 0 - 4095 
| colspan="2" | Maximum number of digital bits the ADC can sample. 8 bit = ADC range 0 - 255 10 bit = ADC range 0 - 1023  12 bit = ADC range 0 - 4095 
|-
|-
| 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
|-
|-
|-
|-
Line 415: Line 411:
| colspan="2" | Selects if the scope traces are automatically generated or not 
| colspan="2" | Selects if the scope traces are automatically generated or not 
|}
|}
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_adc_Base_2dgdi.fcfx FC_Comp_Source_adc_Base_2dgdi.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_adc_Base_2dgdi.fcfx FC_Comp_Source_adc_Base_2dgdi.fcfx]

Latest revision as of 14:36, 13 July 2026

Author Matrix Ltd
Version 1.3
Category Analog Input


ADC Template 2D component

Base ADC component with no graphical interface. Contains all of the embedded side component calls to provide an ADC interface suitable for wrapping with a new ADC style component.

Detailed description

No detailed description exists yet for this component

Examples

Macro reference

GetAverageByte

GetAverageByte
Function call to read the ADC as a byte average sample over time  
- BYTE NumSamples
 
- BYTE DelayUs
Number of micro seconds in between taking each sample 
- BYTE Return


GetAverageInt

GetAverageInt
Function call to read the ADC as a full width average sample over time  
- BYTE NumSamples
 
- BYTE DelayUs
Number of micro seconds in between taking each sample 
- UINT Return


GetByte

GetByte
Blocking call to read the ADC as a byte  
- BYTE Return


GetInt

GetInt
Blocking call to read the ADC at full bit depth  
- UINT Return


GetSampleBits

GetSampleBits
Gets the number of bits per sample 
- BYTE Return


GetSpeedFilter

GetSpeedFilter
Gets the Conversion speed filter string Use in Component.Property.SetFilter() 
- STRING Return


GetString

GetString
Reads the ADC as a direct voltage and returns as a string 
- STRING Return


GetVoltage

GetVoltage
Reads the ADC as a direct voltage 
- FLOAT Return


RawAverageByte

RawAverageByte
Background call to read the ADC as a byte average sample over time Call Enable() before this 
- BYTE NumSamples
 
- BYTE DelayUs
Number of micro seconds in between taking each sample 
- BYTE Return


RawAverageInt

RawAverageInt
Background call to read the ADC as a full width average sample over time Call Enable() before this 
- BYTE NumSamples
 
- BYTE DelayUs
 
- INT Return


RawDisable

RawDisable
Disables the previously enabled ADC channel and converts back to digital mode. 
- VOID Return


RawEnable

RawEnable
Enables and configures the ADC channel to be an analogue input. Only one ADC channel can be enabled at a time. Any RAW functions will reference the last enabled channel only. 
- VOID Return


RawSampleByte

RawSampleByte
Background call to read the ADC as a byte Call Enable() before this 
- BYTE Return


RawSampleInt

RawSampleInt
Background call to read the ADC at full bit depth Call Enable() first 
- UINT Return


SetChannel

SetChannel
Sets the channel ID for the component 
- INT ChannelId
Chaannel starting at 0, -1 is unconnected 
- VOID Return


SetProperties

SetProperties
Set the VRef options and voltage, ConvSpeed and AcqTime for the ADC component. 
- INT VRef10Ms
Voltage Reference x10 mV - Default 500 = 5V 
- BOOL VRefOpt
External VRef 0=Disabled, 1=Enabled 
- INT ConvSpdOpt
Conversion Speed Setting - Refer to numbered list 
- INT Aquisitions
Aquisition time in micro seconds to precharge before sampling 
- VOID Return


Property reference

Properties
Connections
Channel
Analogue Input Channel - Which pin is the analogue input connected to? 
Settings
VRef voltage
Used by the GetVoltage or GetString component macros to take an ADC reading and convert it into a Voltage. +VRef voltage x 10mV Default 500 = 5.0V  
VRef option
Defines what is used as the ADC maximum reference. ADC Range = GND to VRef Voltage VDD - Defines the microcontrollers power supply pin as the max reference, VREF+ Pin - Dedicated pin on the microcontroller to allow for a variable reference voltage. 
Conversion speed
Clock setting to select how fast the ADC peripheral will perform an ADC conversion. The FRC setting is based on a RC time base and so will vary with temperature and pressure. Other settings are generally based on divisions of the master clock. 
Acquisition cycles
Number of micro seconds to wait for the ADC input to charge before starting the analogue sample. 
Bit Depth
Maximum number of digital bits the ADC can sample. 8 bit = ADC range 0 - 255 10 bit = ADC range 0 - 1023 12 bit = ADC range 0 - 4095 
Simulation
Scope Traces
Selects if the scope traces are automatically generated or not 

Component Source Code

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

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