Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions examples/Button/Button/Button.ino
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
/********************
Arduino generic menu system
control led on/off delays

Rui Azevedo - ruihfazevedo(@rrob@)gmail.com

output: Serial
input: Serial
mcu: nano328p
*/

#include <menu.h>
#include <menuIO/serialOut.h>
#include <menuIO/chainStream.h>
#include <menuIO/serialIn.h>

using namespace Menu;

#define LEDPIN LED_BUILTIN
#define MAX_DEPTH 1

int timeOn=10;
int timeOff=90;

MENU(mainMenu, "Blink menu", Menu::doNothing, Menu::noEvent, Menu::wrapStyle
,FIELD(timeOn,"On","ms",0,100,10,1, Menu::doNothing, Menu::noEvent, Menu::noStyle)
,FIELD(timeOff,"Off","ms",0,100,10,1,Menu::doNothing, Menu::noEvent, Menu::noStyle)
,EXIT("<Back")
);

serialIn serial(Serial);
MENU_INPUTS(in,&serial);

MENU_OUTPUTS(out,MAX_DEPTH
,SERIAL_OUT(Serial)
,NONE//must have 2 items at least
);

NAVROOT(nav,mainMenu,MAX_DEPTH,in,out);

void setup() {
pinMode(LEDPIN, OUTPUT);
Serial.begin(115200);
while(!Serial);
Serial.println("Menu 4.x");
Serial.println("Use keys + - * /");
Serial.println("to control the menu navigation");
}

void loop() {
nav.poll();
digitalWrite(LEDPIN, HIGH);
delay(timeOn);
digitalWrite(LEDPIN, LOW);
delay(timeOff);
}
38 changes: 38 additions & 0 deletions examples/Button/platformio.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
; PlatformIO Project Configuration File
;
; Build options: build flags, source filter, extra scripting
; Upload options: custom port, speed and extra flags
; Library options: dependencies, extra library storages
;
; Please visit documentation for the other options and examples
; http://docs.platformio.org/en/stable/projectconf.html


[platformio]
src_dir=Blink
; lib_dir=~/Arduino/Libraries

[env:nanoatmega328]
platform = atmelavr
board = nanoatmega328
framework = arduino
upload_port=/dev/ttyUSB*
upload_flags=-V
build_flags = -DNODEBUG

; [env:uno]
; platform = atmelavr
; board = nanoatmega328
; framework = arduino

; [env:due]
; platform = atmelsam
; board = due
; framework = arduino
; build_flags = -Wno-comment -Wno-reorder -Wno-strict-aliasing -Wno-builtin-macro-redefined

; [env:teensy31]
; platform = teensy
; board = teensy31
; framework = arduino
; build_flags = -DMENU_USERAM