Component: Timer (Timing): Difference between revisions
Appearance
m Text replacement - "class="wikitable" style="width:60%; background-color:#FFFFFF;"" to "class="mtx-class-macrotable wikitable"" |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (4 intermediate revisions by the same user not shown) | |||
| Line 66: | Line 66: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetCountMicroSeconds''' | ||
|- | |- | ||
| colspan="2" | Returns the count value as a number of whole microseconds, rounded down to the nearest microsecond | | colspan="2" | Returns the count value as a number of whole microseconds, rounded down to the nearest microsecond | ||
| Line 80: | Line 80: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetCountMilliseconds''' | ||
|- | |- | ||
| colspan="2" | Returns the count value as a number of whole milliseconds, rounded down to the nearest millisecond | | colspan="2" | Returns the count value as a number of whole milliseconds, rounded down to the nearest millisecond | ||
| Line 94: | Line 94: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetCountReal''' | ||
|- | |- | ||
| colspan="2" | Returns the count value as a floating point value in seconds. | | colspan="2" | Returns the count value as a floating point value in seconds. | ||
| Line 108: | Line 108: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetCountSeconds''' | ||
|- | |- | ||
| colspan="2" | Returns the count value as a number of whole seconds, rounded down to the nearest second | | colspan="2" | Returns the count value as a number of whole seconds, rounded down to the nearest second | ||
| Line 122: | Line 122: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetCountString''' | ||
|- | |- | ||
| colspan="2" | Returns the count value as a floating point string in seconds. | | colspan="2" | Returns the count value as a floating point string in seconds. | ||
| Line 141: | Line 141: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GetRawCount''' | ||
|- | |- | ||
| colspan="2" | Efficient command to collect the integer number of instructions since the timer was started. | | colspan="2" | Efficient command to collect the integer number of instructions since the timer was started. | ||
| Line 155: | Line 155: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ResetCounter''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| Line 169: | Line 169: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''StartCounter''' | ||
|- | |- | ||
| colspan="2" | Starts the timer counting. | | colspan="2" | Starts the timer counting. | ||
| Line 188: | Line 188: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''StopCounter''' | ||
|- | |- | ||
| colspan="2" | Stops the timer counting. | | colspan="2" | Stops the timer counting. | ||
| Line 203: | Line 203: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
| Line 237: | Line 237: | ||
| colspan="2" | Max time in seconds that we can measure before rolling over and starting again. | | colspan="2" | Max time in seconds that we can measure before rolling over and starting again. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Simulation | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:37, 13 July 2026
| Author | Matrix TSL |
| Version | 14.0 |
| Category | Timing |
Timer component
Allows you to measure the passage of time via the use of a hardware timer peripheral. Works like a stopwatch with macros to start, stop and reset the timer counter. Returns time as integer Seconds, Milliseconds, Microseconds and also Floating Point and String.
Version information
Library Version, Component Version, Date, Author, Info 14, 14.0, 10-07-24, MW, Fixed a bug to reset simulation timer value when TimerReset() is called 18, 14.0, 07-02-25, BR, Hidden Postscaler property as it will cause issues with reported timings if used 19, 14.0, 07-02-25, BR, Changed default to TMR0 with 1:1 prescaler 20, 14.0, 07-02-25, BR, Added timer resolution property to show what resolution of timings can be acheived 21, 14.0, 07-02-25, BR, Hidden some of the less useful properties from the user 22, 14.0, 07-02-25, BR, Fixed a bug where the timer wouldn't correctly report the time when stopped
Detailed description
No detailed description exists yet for this component
Examples
Here is a basic example showing the operation of the timer component used to time a section of code or the duration of a specific event.
Macro reference
GetCountMicroSeconds
| GetCountMicroSeconds | |
| Returns the count value as a number of whole microseconds, rounded down to the nearest microsecond | |
| Return | |
GetCountMilliseconds
| GetCountMilliseconds | |
| Returns the count value as a number of whole milliseconds, rounded down to the nearest millisecond | |
| Return | |
GetCountReal
| GetCountReal | |
| Returns the count value as a floating point value in seconds. | |
| Return | |
GetCountSeconds
| GetCountSeconds | |
| Returns the count value as a number of whole seconds, rounded down to the nearest second | |
| Return | |
GetCountString
| GetCountString | |
| Returns the count value as a floating point string in seconds. | |
| Precision | |
| Number of decimal places to display in string | |
| Return | |
GetRawCount
| GetRawCount | |
| Efficient command to collect the integer number of instructions since the timer was started. | |
| Return | |
ResetCounter
| ResetCounter | |
| Return | |
StartCounter
| StartCounter | |
| Starts the timer counting. | |
| ResetCounters | |
| Range: 0-1 where 0=Do Not Reset and 1=Reset | |
| Return | |
StopCounter
| StopCounter | |
| Stops the timer counting. | |
| Return | |
Property reference
Component Source Code
Please click here to download the component source project: FC_Comp_Source_TimerComponent.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_TimerComponent.fcfx