Jump to content

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

From Flowcode Help
Created page with "{| style="width:50%" |- | width="20%" style="color:gray;" | Author | MatrixTSL |- | width="20%" style="color:gray;" | Version | 1.0 |- | width="20%" style="color:gray;..."
 
m Text replacement - "width="90%" style="background-color:#D8C9D8; color:#4B008D;"" to "width="90%" class="mtx-class-macrohead""
 
(12 intermediate revisions by 2 users not shown)
Line 17: Line 17:
==Component Source Code==
==Component Source Code==


Please click here for the component source code: [https://www.flowcode.co.uk/wikicopy/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_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_TimerComponentPIC32Core.fcfx FC_Comp_Source_TimerComponentPIC32Core.fcfx]


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




Line 38: Line 50:


==Examples==
==Examples==




Line 57: Line 79:




==Downloadable macro reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
 
 
 
 
 
 
 
 
==Macro reference==
 
===Check_Counter===
{| 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;" | '''Start_S'''
| width="90%" class="mtx-class-macrohead" | '''Check_Counter'''
|-
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in seconds using the core timer. 
| 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. 
|-
|-
|-
|-
| 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" |  
|-
| 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''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Delay_InstructionCount===
{| 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;" | '''Start_InstructionCount'''
| width="90%" class="mtx-class-macrohead" | '''Delay_InstructionCount'''
|-
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer. 
| colspan="2" | A blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer. 
|-
|-
|-
|-
Line 95: Line 124:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Delay_Ms===
{| 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;" | '''Delay_S'''
| width="90%" class="mtx-class-macrohead" | '''Delay_Ms'''
|-
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in seconds using the core timer. 
| colspan="2" | A blocking function that allows for accurate delays to be specified in milliseconds using the core timer. 
|-
|-
|-
|-
Line 113: Line 143:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Delay_Ns===
{| 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;" | '''Start_Ms'''
| width="90%" class="mtx-class-macrohead" | '''Delay_Ns'''
|-
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in milliseconds using the core timer. 
| colspan="2" | A blocking function that allows for accurate delays to be specified in nano seconds using the core timer. 
|-
|-
|-
|-
Line 131: Line 162:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Delay_S===
{| 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;" | '''Start_Us'''
| width="90%" class="mtx-class-macrohead" | '''Delay_S'''
|-
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in micro seconds using the core timer. 
| colspan="2" | A blocking function that allows for accurate delays to be specified in seconds using the core timer. 
|-
|-
|-
|-
Line 149: Line 181:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Delay_Us===
{| 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;" | '''Delay_Ms'''
| width="90%" class="mtx-class-macrohead" | '''Delay_Us'''
|-
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in milliseconds using the core timer. 
| colspan="2" | A blocking function that allows for accurate delays to be specified in micro seconds using the core timer. 
|-
|-
|-
|-
Line 167: Line 200:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Start_InstructionCount===
{| 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;" | '''Delay_InstructionCount'''
| width="90%" class="mtx-class-macrohead" | '''Start_InstructionCount'''
|-
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer. 
| colspan="2" | A none blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer. 
|-
|-
|-
|-
Line 185: Line 219:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Start_Ms===
{| 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;" | '''Start_Ns'''
| width="90%" class="mtx-class-macrohead" | '''Start_Ms'''
|-
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in nano seconds using the core timer. 
| colspan="2" | A none blocking function that allows for accurate delays to be specified in milliseconds using the core timer. 
|-
|-
|-
|-
Line 203: Line 238:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Start_Ns===
{| 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;" | '''Delay_Us'''
| width="90%" class="mtx-class-macrohead" | '''Start_Ns'''
|-
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in micro seconds using the core timer. 
| colspan="2" | A none blocking function that allows for accurate delays to be specified in nano seconds using the core timer. 
|-
|-
|-
|-
Line 221: Line 257:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Start_S===
{| 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;" | '''Delay_Ns'''
| width="90%" class="mtx-class-macrohead" | '''Start_S'''
|-
|-
| colspan="2" | A blocking function that allows for accurate delays to be specified in nano seconds using the core timer. 
| colspan="2" | A none blocking function that allows for accurate delays to be specified in seconds using the core timer. 
|-
|-
|-
|-
Line 239: Line 276:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Start_Us===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''Start_Us'''
|-
| colspan="2" | A none blocking function that allows for accurate delays to be specified in micro seconds using the core timer. 
|-
|-
| 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'''
|-
|-
| 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. 
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
| width="90%" | Delay
|-
|-
| colspan="2" |  
|-
|-
| 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''
|}
|}




==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'''  
|-
|-
|}
|}

Latest revision as of 14:23, 13 July 2026

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_TimerComponentPIC32Core.fcfx

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

Detailed description

No detailed description exists yet for this component

Examples

No additional examples







Macro reference

Check_Counter

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. 
- BOOL Return


Delay_InstructionCount

Delay_InstructionCount
A blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer. 
- ULONG Delay
 
- VOID Return


Delay_Ms

Delay_Ms
A blocking function that allows for accurate delays to be specified in milliseconds using the core timer. 
- ULONG Delay
 
- VOID Return


Delay_Ns

Delay_Ns
A blocking function that allows for accurate delays to be specified in nano seconds using the core timer. 
- ULONG Delay
 
- VOID Return


Delay_S

Delay_S
A blocking function that allows for accurate delays to be specified in seconds using the core timer. 
- ULONG Delay
 
- VOID Return


Delay_Us

Delay_Us
A blocking function that allows for accurate delays to be specified in micro seconds using the core timer. 
- ULONG Delay
 
- VOID Return


Start_InstructionCount

Start_InstructionCount
A none blocking function that allows for accurate delays to be specified in FOSC instructions using the core timer. 
- ULONG Delay
 
- VOID Return


Start_Ms

Start_Ms
A none blocking function that allows for accurate delays to be specified in milliseconds using the core timer. 
- ULONG Delay
 
- VOID Return


Start_Ns

Start_Ns
A none blocking function that allows for accurate delays to be specified in nano seconds using the core timer. 
- ULONG Delay
 
- VOID Return


Start_S

Start_S
A none blocking function that allows for accurate delays to be specified in seconds using the core timer. 
- ULONG Delay
 
- VOID Return


Start_Us

Start_Us
A none blocking function that allows for accurate delays to be specified in micro seconds using the core timer. 
- ULONG Delay
 
- VOID Return


Property reference

Properties