So I'm making a custom menu for a DMX system, I've hooked up a 16x2 display, for showing which menu is selected.
It's on a Uno - R3
The menuManager.getMenu() and getPointer() returns an integer, but when I try to get the 16x2 to write them, by calling "updateDisplay()" , I just get odd symbols (and sometimes the number "2"... When I check with Serial.println I get the correct numbers. I've googled like crazy, and I'm loosing it... ![]()
The "Hello World"-example works perfectly
Removed most irrelevant code (debounce's and stuff) ![]()
Any suggestions? All help is greatly appreciated.
#include <LiquidCrystal/LiquidCrystal.h>
#include <MenuGUI.h>
MenuGUI menuManager=MenuGUI();
LiquidCrystal lcd(6,7,8,9,10,11);
int buttonSelect=12;
int buttonBack=13;
int buttonUpDownState;
int buttonSelectState;
int buttonBackState;
void setup(){
lcd.begin(16,2);
pinMode(buttonSelect,INPUT);
pinMode(buttonBack,INPUT);
}
void loop(){
buttonUpDownState=analogRead(A5);
if (buttonUpDownState<1020&&buttonUpDownState>1010){
menuManager.menuUp();
updateDisplay();
}
}
if (buttonUpDownState<775&&buttonUpDownState>765){
menuManager.menuDown();
updateDisplay();
}
}
buttonSelectState=digitalRead(buttonSelect);
menuManager.menuSelect();
updateDisplay();
}
}
    buttonBackState=digitalRead(buttonBack);
if (buttonBackState==HIGH){
menuManager.menuBack();
updateDisplay();
}
}
void updateDisplay(){
lcd.clear();
lcd.write(menuManager.getPointer());
lcd.setCursor(0,1);
lcd.write(menuManager.getMenu());
}