Увеличьте или уменьшите яркость дисплея Nextion

У меня есть дисплей nextion. Я хочу реализовать этот вопрос. Запустите программу. Если, например, я не прикасаюсь к дисплею в течение 15 секунд, он должен отключить свою яркость. Если я коснусь экрана в любой точке, он должен увеличить свою яркость.

Для этого я создаю этот код:

В PreinitializeEvent страницы 0 я вставил этот код:

tm0.tim=0
tm0.en=1
dim=30

В событии Touch Release на странице 0 я вставил этот код:

dims=100

Но если я пытаюсь запустить программу, яркость всегда одинаковая. Не увеличить.

/РЕДАКТИРОВАТЬ

Я использую NextionEdito 0.58

, 👍-1

Обсуждение

PreinitializeEvent — это представление NExtion IDE, @bircastri

@bircastri, в этом пространстве stackexchange.com мы в первую очередь занимаемся ответами на вопросы о разработке с использованием Arduino IDE. Хотя среда разработки Nextion выглядит интересной, некоторые могут счесть ее не относящейся к теме. Кроме того, учтите, что Nextion IDE сама по себе может не иметь функции, которую вы ищете., @st2000

dim устанавливает яркость для этого сеанса dims устанавливает яркость по умолчанию и остается даже после сброса. Я обнаружил, что наиболее эффективным способом является добавление кода на вкладку предварительной инициализации страницы. Очевидно, что если вы используете затемнение на странице 0, все страницы будут иметь такую яркость., @STEVE


1 ответ


1

Исходный вопрос был улучшен (что приветствуется) и теперь включает IDE, которую использует автор. В этом пространстве stackexchange.com мы в первую очередь занимаемся ответами на вопросы о разработке с использованием Arduino IDE. Хотя редактор Nextion выглядит интересно, некоторые могут счесть его не относящимся к теме.

Для тех, кто интересуется управлением яркостью своего дисплея Nextion и использует Arduino IDE, есть ответ:

Похоже, есть несколько библиотек Nextion Arduino на выбор. Если вы используете эту библиотеку отображения Nextion, вот пример кода, который устанавливает яркость экрана. Часть кода, которая устанавливает яркость экрана, довольно проста и находится в функции loop() Arduino. В функции loop() яркость устанавливается повторно по мере выполнения программы:

void loop() {
  int brightness = analogRead(A0);
  int bright = map(brightness, 0, 1024, 0, 100);
  String dim = "dim=" + String(bright);
  myNextion.sendCommand(dim.c_str());

}

Для тех из вас, кто использует редактор Nextion и Библиотеки Nextion Arduino, есть эта проблема github.com в котором говорится о добавлении нескольких отсутствующих функций Nextion, включая функцию яркости экрана. Эта проблема все еще остается ОТКРЫТОЙ (Плохая поддержка? / Плохая уборка?). Но ему больше года, поэтому, возможно, он был включен. Если да, то вот пример кода по этой ссылке:

/**
* Установите яркость дисплея.
*
* @param buffer - число (0 - 100).
*/
bool setBrightness(byte buffer);
,

Поскольку вы не указали, какую библиотеку Nextion вы используете, и поскольку вы не показали нам самую простую версию вашего кода, которая все еще не работает, мы должны угадать наиболее вероятный ответ., @st2000

Я добавил эту информацию из первого поста. Я все равно использую Nextion Edito 0.58v, @bircastri