Difference between revisions of "Component: PIC32 Core Timer (Timing)"

From Flowcode Help
Jump to navigationJump to search
Line 17: Line 17:
 
==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_TimerComponentPIC32Core.fcfx FC_Comp_Source_TimerComponentPIC32Core.fcfx]
+
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_temp/TimerComponentPIC32Core.fcfx FC_Comp_Source_temp/TimerComponentPIC32Core.fcfx]
  
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_TimerComponentPIC32Core.fcfx FC_Comp_Source_TimerComponentPIC32Core.fcfx]
+
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_temp/TimerComponentPIC32Core.fcfx FC_Comp_Source_temp/TimerComponentPIC32Core.fcfx]
  
 
==Detailed description==
 
==Detailed description==
Line 77: Line 77:
  
 
''<span style="color:red;">No additional examples</span>''
 
''<span style="color:red;">No additional examples</span>''
 +
 +
  
  
Line 85: Line 87:
 
==Macro reference==
 
==Macro reference==
  
===Start_S===
+
===Check_Counter===
 
{| 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;" | '''Start_S'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Check_Counter'''
 
|-
 
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in seconds using the core timer.&nbsp;
+
| colspan="2" | Checks to see if the counter time is elapsed. Used in conjunction with the Start_ component macros. Returns 1 if complete or 0 if still counting.&nbsp;
 
|-
 
|-
 
|-
 
|-
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
+
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| width="90%" | Delay
 
|-
 
| colspan="2" | &nbsp;
 
|-
 
| 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''
 
|}
 
|}
  
  
===Start_InstructionCount===
+
===Delay_InstructionCount===
 
{| 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;" | '''Start_InstructionCount'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Delay_InstructionCount'''
 
|-
 
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer.&nbsp;
+
| colspan="2" | A blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer.&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 123: Line 120:
  
  
===Delay_S===
+
===Delay_Ms===
 
{| 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;" | '''Delay_S'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Delay_Ms'''
 
|-
 
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in seconds using the core timer.&nbsp;
+
| colspan="2" | A blocking function that allows for accurate delays to be specified in milliseconds using the core timer.&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 142: Line 139:
  
  
===Start_Ms===
+
===Delay_Ns===
 
{| 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;" | '''Start_Ms'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Delay_Ns'''
 
|-
 
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in milliseconds using the core timer.&nbsp;
+
| colspan="2" | A blocking function that allows for accurate delays to be specified in nano seconds using the core timer.&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 161: Line 158:
  
  
===Start_Us===
+
===Delay_S===
 
{| 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;" | '''Start_Us'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Delay_S'''
 
|-
 
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in micro seconds using the core timer.&nbsp;
+
| colspan="2" | A blocking function that allows for accurate delays to be specified in seconds using the core timer.&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 180: Line 177:
  
  
===Delay_Ms===
+
===Delay_Us===
 
{| 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;" | '''Delay_Ms'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Delay_Us'''
 
|-
 
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in milliseconds using the core timer.&nbsp;
+
| colspan="2" | A blocking function that allows for accurate delays to be specified in micro seconds using the core timer.&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 199: Line 196:
  
  
===Delay_InstructionCount===
+
===Start_InstructionCount===
 
{| 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;" | '''Delay_InstructionCount'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Start_InstructionCount'''
 
|-
 
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer.&nbsp;
+
| colspan="2" | A none blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer.&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 218: Line 215:
  
  
===Start_Ns===
+
===Start_Ms===
 
{| 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;" | '''Start_Ns'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Start_Ms'''
 
|-
 
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in nano seconds using the core timer.&nbsp;
+
| colspan="2" | A none blocking function that allows for accurate delays to be specified in milliseconds using the core timer.&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 237: Line 234:
  
  
===Delay_Us===
+
===Start_Ns===
 
{| 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;" | '''Delay_Us'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Start_Ns'''
 
|-
 
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in micro seconds using the core timer.&nbsp;
+
| colspan="2" | A none blocking function that allows for accurate delays to be specified in nano seconds using the core timer.&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 256: Line 253:
  
  
===Delay_Ns===
+
===Start_S===
 
{| 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;" | '''Delay_Ns'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Start_S'''
 
|-
 
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in nano seconds using the core timer.&nbsp;
+
| colspan="2" | A none blocking function that allows for accurate delays to be specified in seconds using the core timer.&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 275: Line 272:
  
  
===Check_Counter===
+
===Start_Us===
 
{| 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;" | '''Check_Counter'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Start_Us'''
 +
|-
 +
| colspan="2" | A none blocking function that allows for accurate delays to be specified in micro seconds using the core timer.&nbsp;
 +
|-
 
|-
 
|-
| colspan="2" | Checks to see if the counter time is elapsed. Used in conjunction with the Start_ component macros. Returns 1 if complete or 0 if still counting.&nbsp;
+
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
 +
| width="90%" | Delay
 
|-
 
|-
 +
| colspan="2" | &nbsp;
 
|-
 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
+
| 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''
 
|}
 
|}

Revision as of 12:03, 3 February 2023

Author MatrixTSL
Version 1.0
Category Timing


PIC32 Core Timer component

Allows for easy and accurate timings using the built in Core timer on the PIC32 devices.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_temp/TimerComponentPIC32Core.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_temp/TimerComponentPIC32Core.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples





Macro reference

Check_Counter

Fc9-comp-macro.png Check_Counter
Checks to see if the counter time is elapsed. Used in conjunction with the Start_ component macros. Returns 1 if complete or 0 if still counting. 
Fc9-bool-icon.png - BOOL Return


Delay_InstructionCount

Fc9-comp-macro.png Delay_InstructionCount
A blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return


Delay_Ms

Fc9-comp-macro.png Delay_Ms
A blocking function that allows for accurate delays to be specified in milliseconds using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return


Delay_Ns

Fc9-comp-macro.png Delay_Ns
A blocking function that allows for accurate delays to be specified in nano seconds using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return


Delay_S

Fc9-comp-macro.png Delay_S
A blocking function that allows for accurate delays to be specified in seconds using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return


Delay_Us

Fc9-comp-macro.png Delay_Us
A blocking function that allows for accurate delays to be specified in micro seconds using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return


Start_InstructionCount

Fc9-comp-macro.png Start_InstructionCount
A none blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return


Start_Ms

Fc9-comp-macro.png Start_Ms
A none blocking function that allows for accurate delays to be specified in milliseconds using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return


Start_Ns

Fc9-comp-macro.png Start_Ns
A none blocking function that allows for accurate delays to be specified in nano seconds using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return


Start_S

Fc9-comp-macro.png Start_S
A none blocking function that allows for accurate delays to be specified in seconds using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return


Start_Us

Fc9-comp-macro.png Start_Us
A none blocking function that allows for accurate delays to be specified in micro seconds using the core timer. 
Fc9-u32-icon.png - ULONG Delay
 
Fc9-void-icon.png - VOID Return



Property reference

Fc9-prop-icon.png Properties