Ich komme einfach nicht mit, meinst Du so:
{
lastReportedPos = encoderPos;
vorhin = jetzt; // Monoflop retriggern
displayOn = true;
lcd.setCursor(0, 0);
lcd.print("12345678901234567890");
// lcd.setCursor(6, 1);
// lcd.print(" ");
lcd.setCursor(6, 1);
if (encoderPos < 0 && lastMutePos == 0) encoderPos = 0;
if (encoderPos <= 3 && lastMutePos == 1) encoderPos = 4;
if (encoderPos > 4) encoderPos = 4;
if (lastMutePos == 0)
lcd.print(text[encoderPos]);
neuePosition = true;
if (encoderPos >3 && lastMutePos == 1)
{
lcd.print(" Mute* ");
}
}
{
if (displayOn && encoderPos <= 3 && lastMutePos == 0 && neuePosition && !digitalRead(encoderPinSW)) // nur beim Tastendruck des Encoders werden die Zeichen verschickt
displayOn = true;
neuePosition = false;
Serial.write(code[encoderPos], 8);
releaseKey();
Auch hier werden immer sofort eeeeeeeeeeee ausgegeben, ohne Tastendruck.
Irgendwie habe ich mit dem einfügen von dem
displayOn = true;
den Tastendruck ausgehebelt, komme aber nicht drauf wie.
Es wird immer das erste Zeichen sofort ausgegeben eeeeeeeeeeeeeeeeeeeeeeeeeeee usw.