Move the documentation to `doc/plugin/CycleTimeReport.md`, sources under `src/kaleidoscope/plugin/` (appropriately namespaced). This is in preparation of merging plugins into a single monorepo. Signed-off-by: Gergely Nagy <algernon@keyboard.io>pull/389/head
parent
0588193256
commit
f0b51dfb00
@ -0,0 +1,53 @@
|
||||
# Kaleidoscope-CycleTimeReport
|
||||
|
||||
A development and debugging aid, this plugin will measure average mainloop times
|
||||
(in microseconds) and print it to `Serial` periodically. While not the most
|
||||
reliable way to measure the speed of processing, it gives a reasonable
|
||||
indication nevertheless.
|
||||
|
||||
## Using the plugin
|
||||
|
||||
The plugin comes with reasonable defaults (see below), and can be used out of
|
||||
the box, without any further configuration:
|
||||
|
||||
```c++
|
||||
#include <Kaleidoscope.h>
|
||||
#include <Kaleidoscope-CycleTimeReport.h>
|
||||
|
||||
KALEIDOSCOPE_INIT_PLUGINS(CycleTimeReport);
|
||||
|
||||
void setup (void) {
|
||||
Serial.begin(9600);
|
||||
Kaleidoscope.setup ();
|
||||
}
|
||||
```
|
||||
|
||||
## Plugin methods
|
||||
|
||||
The plugin provides a single object, `CycleTimeReport`, with the following
|
||||
property. All times are in milliseconds.
|
||||
|
||||
### `.average_loop_time`
|
||||
|
||||
> A read-only by contract value, the average time of main loop lengths between
|
||||
> two reports.
|
||||
|
||||
## Overrideable methods
|
||||
|
||||
### `cycleTimeReport()`
|
||||
|
||||
> Reports the average loop time. By default, it does so over `Serial`, every
|
||||
> time when the report period is up.
|
||||
>
|
||||
> It can be overridden, to change how the report looks, or to make the report
|
||||
> toggleable, among other things.
|
||||
>
|
||||
> It takes no arguments, and returns nothing, but has access to
|
||||
> `CycleTimeReport.average_loop_time` above.
|
||||
|
||||
## Further reading
|
||||
|
||||
Starting from the [example][plugin:example] is the recommended way of getting
|
||||
started with the plugin.
|
||||
|
||||
[plugin:example]: https://github.com/keyboardio/Kaleidoscope-CycleTimeReport/blob/master/examples/CycleTimeReport/CycleTimeReport.ino
|
Loading…
Reference in new issue