Firmware for the Keyboardio Model 01 and other keyboards with AVR or ARM MCUs.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Gergely Nagy cafdd7086f
Relicense under the GPLv3 (only)
6 years ago
examples/CycleTimeReport Relicense under the GPLv3 (only) 6 years ago
src Relicense under the GPLv3 (only) 6 years ago
.gitignore Initial import 7 years ago
.travis.yml Add a Travis CI control file 7 years ago
COPYING Relicense under the GPLv3 (only) 6 years ago
Makefile Update Makefile with OSX fixes and new paths 7 years ago
README.md Updated to use the new plugin APIs 6 years ago
library.properties Initial import 7 years ago

README.md

Kaleidoscope-CycleTimeReport

status Build Status

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:

#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 is the recommended way of getting started with the plugin.