sonyhome / serialmenu Goto Github PK
View Code? Open in Web Editor NEWAn Arduino library to easily create menus on the serial console.
License: MIT License
An Arduino library to easily create menus on the serial console.
License: MIT License
Hi, I'm trying to use this library on a Arduino Zero but getting the following error when trying demo2 :
Arduino IDE ver 1.8.12
seems to affect the load and getNumber methods
demo2.ino: In lambda function:
demo2:39:74: error: passing 'const SerialMenu' as 'this' argument discards qualifiers [-fpermissive]
{"> - Sub-menu", false, '>', { menu.load(subMenu, subMenuSize); menu.show();} }
note: in call to 'void SerialMenu::load(const SerialMenuEntry*, uint8_t)'
inline void load(const SerialMenuEntry* array, uint8_t arraySize)
^~~~
I also had to add "#include <Arduino.h>" to the hpp file or it could not find "Serial"
Hallo,
I try SerialMenu, but when I build then I receive the following error:
fatal error: SerialMenu.hpp: No such file or directory
What am I doing wrong?
How to diag this issue?
regards Andre
details:
go https://github.com/sonyhome/SerialMenu
-> download zip
Sketch/Include Library/Add .Zip Library
add:example/SerialMenu/demo1
and build, with following error:
"/usr/local/lib/arduino-1.6.8/hardware/tools/avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10608 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-I/usr/local/lib/arduino-1.6.8/hardware/arduino/avr/cores/arduino" "-I/usr/local/lib/arduino-1.6.8/hardware/arduino/avr/variants/eightanaloginputs" "/tmp/build722fc621774fcff310800eb9c067689b.tmp/sketch/demo1.ino.cpp" -o "/tmp/build722fc621774fcff310800eb9c067689b.tmp/preproc/ctags_target_for_gcc_minus_e.cpp"
/home/admin/Arduino/libraries/SerialMenu-master/examples/demo1/demo1.ino:26:26: fatal error: SerialMenu.hpp: No such file or directory
#include <SerialMenu.hpp>
^
compilation terminated.
exit status 1
Error compiling for board Arduino/Genuino Uno.
$ grep include Arduino/libraries/SerialMenu-master/examples/demo1/demo1.ino
#include <SerialMenu.hpp>
$ find Arduino/libraries -name SerialMenu.hpp -ls
103355 20 -rw-r--r-- 1 admin admin 17684 Feb 6 15:17 Arduino/libraries/SerialMenu-master/src/SerialMenu.hpp
hi
I can get numbers only 2 digits after the decimal point/
145.255 -> 145.25
what do i do wrong?
Eitan
Arduino: 1.8.15 (Mac OS X), TD: 1.54, Board: "Teensy 4.1, Serial, 600 MHz, Faster, US English"
In file included from /var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino:26:0:
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp: In constructor 'SerialMenuEntry::SerialMenuEntry(const char*, bool, char, void ()())':
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:188:16: warning: 'SerialMenuEntry::key' will be initialized after [-Wreorder]
const char key;
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:180:28: warning: 'void ( SerialMenuEntry::actionCallback)()' [-Wreorder]
void (actionCallback)();
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:192:5: warning: when initialized here [-Wreorder]
SerialMenuEntry(const char * m, bool isprogMem, char k, void (c)()) :
^
/var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino: In lambda function:
/var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino:55:52: warning: passing 'const SerialMenu' as 'this' argument discards qualifiers [-fpermissive]
{ x = menu.getNumber<uint16_t>("Input x = "); }
^
In file included from /var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino:26:0:
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:373:14: note: in call to 'T SerialMenu::getNumber(const char) [with T = short unsigned int]'
inline T getNumber(const char * const message = nullptr)
^
/var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino: In lambda function:
/var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino:61:49: warning: passing 'const SerialMenu' as 'this' argument discards qualifiers [-fpermissive]
{ f = menu.getNumber("Input f = "); }
^
In file included from /var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino:26:0:
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:373:14: note: in call to 'T SerialMenu::getNumber(const char) [with T = float]'
inline T getNumber(const char * const message = nullptr)
^
demo1: In function 'void setup()':
/var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino:89:35: warning: passing 'const SerialMenu' as 'this' argument discards qualifiers [-fpermissive]
menu.load(mainMenu, mainMenuSize);
^
In file included from /var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino:26:0:
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:320:17: note: in call to 'void SerialMenu::load(const SerialMenuEntry*, uint8_t)'
inline void load(const SerialMenuEntry* array, uint8_t arraySize)
^
demo1: In function 'void loop()':
/var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino:94:15: warning: passing 'const SerialMenu' as 'this' argument discards qualifiers [-fpermissive]
menu.run(100);
^
In file included from /var/folders/7n/4rg6bhnn00l7_c8qck52wyf40000gn/T/arduino_modified_sketch_581204/demo1.ino:26:0:
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:440:10: note: in call to 'bool SerialMenu::run(uint16_t)'
bool run(const uint16_t loopDelayMs)
^
In file included from /Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.cpp:8:0:
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp: In constructor 'SerialMenuEntry::SerialMenuEntry(const char*, bool, char, void ()())':
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:188:16: warning: 'SerialMenuEntry::key' will be initialized after [-Wreorder]
const char key;
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:180:28: warning: 'void ( SerialMenuEntry::actionCallback)()' [-Wreorder]
void (*actionCallback)();
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:192:5: warning: when initialized here [-Wreorder]
SerialMenuEntry(const char * m, bool isprogMem, char k, void (c)()) :
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp: In constructor 'SerialMenu::SerialMenu()':
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:278:7: error: 'Serial' was not declared in this scope
Serial.begin(9600);
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp: In member function 'void SerialMenu::show() const':
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:357:11: error: 'Serial' was not declared in this scope
Serial.println(menu[i].getMenu());
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp: In member function 'char SerialMenu::getChar()':
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:366:15: error: 'Serial' was not declared in this scope
while (!Serial.available());
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:367:14: error: 'Serial' was not declared in this scope
return Serial.read();
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp: In member function 'T SerialMenu::getNumber(const char)':
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:381:9: error: 'Serial' was not declared in this scope
Serial.print(message);
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:386:15: error: 'Serial' was not declared in this scope
while (!Serial.available());
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:387:11: error: 'Serial' was not declared in this scope
c = Serial.read();
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp: In member function 'bool SerialMenu::run(uint16_t)':
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:442:39: error: 'Serial' was not declared in this scope
const bool userInputAvailable = Serial.available();
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:453:14: error: in argument to unary !
if (!userInputAvailable)
^
/Users/jmo/Documents/Arduino/libraries/SerialMenu/src/SerialMenu.hpp:480:12: error: in argument to unary !
if (!userInputAvailable)
^
Error compiling for board Teensy 4.1.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.