Skip to content

thomasgeissl/Parameter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Parameter

description

Templatized parameter library for arduino

this is a work in progress, use at your own risk, still needs some testing after the recent changes

usage

  • declare parameters and optionally a parameter group (as global variables outside of setup or loop)
ParameterGroup _parameters;
Parameter<int> _intParameter;
Parameter<bool> _boolParameter;
  • set them up (in setup)
  _intParameter.setup("intparameter", 9, 0, 9, "this is an int parameter"); 
  _boolParameter.setup("boolparameter", false, "this is a bool parameter"); 
  • add a custom serializer (in setup)
  _intParameter.setSerializer([](Parameter<int>& parameter) {
    String message = parameter.getName();
    message += ",";
    message += parameter.getDescription();
    message += ",";
    message += String(parameter.get());
    return message;
  });
  • add a change listener (in setup)
  _intParameter.addListener([](Parameter<int>& parameter) {
    Serial.println(parameter.getName() + " changed, new value: " + String(parameter.get()));
    // Serial.println(parameter.serialize());
  });
  • use it pretty much like a normal variable (in loop)
_intParameter = 1;
_intParameter.set(2);
_intParameter.set(2, false);//set without event notification
int value = _intParameter;
String serializedParameter = _intParameter.serialize();

About

parameter library for arduino

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages