Дисплей Nextion: азы. Arduino, ESP8266.

Тема в разделе "Глядите, что я сделал", создана пользователем ИгорьК, 9 авг 2016.

Метки:
  1. DIYMan

    DIYMan Guest

    Думаю, всем известно, что несмотря на убого выглядящие шрифты Nextion - поддержка кириллицы там есть, для этого достаточно указать ISO-8859-5 в настройках проекта, как кодовую страницу для шрифтов.

    Но беда в том, что лично у мну, например, все исходники прошивок хранятся в кодировке UTF-8, соответственно, послав в UART Nextion пакет вида t0.txt="тут UTF-8" - ничего не выйдет, в текстовом поле будут кракозябры. В общем, функция ниже - конвертирует из UTF-8 в ISO-8859-5 - и уже сконвертированную строку мона смело пулять в Nextion - и он послушно будет отображать русский текст.

    Код (C++):
    String convert(const char* in)
    {
        String out;
        if (in == NULL)
            return out;

        uint32_t codepoint = 0;
        while (*in != 0)
        {
           uint8_t ch = (uint8_t) (*in);
            if (ch <= 0x7f)
                codepoint = ch;
            else if (ch <= 0xbf)
                codepoint = (codepoint << 6) | (ch & 0x3f);
            else if (ch <= 0xdf)
                codepoint = ch & 0x1f;
            else if (ch <= 0xef)
                codepoint = ch & 0x0f;
            else
                codepoint = ch & 0x07;
            ++in;
            if (((*in & 0xc0) != 0x80) && (codepoint <= 0x10ffff))
            {
                if (codepoint <= 255)
                {
                    out += (char) codepoint;
                }
                else
                {
                  if(codepoint > 0x400)
                    out += (char) (codepoint - 0x360);
                }
            }
        }
        return out;
    }
    Возможно, кому-то будет полезно.
     
    Mitrandir, Belkin и ИгорьК нравится это.
  2. Moofasta

    Moofasta Нуб

    Добрый день, у кого-то получилось дебаггер некстион подключить к ардуино напрямую, как здесь упоминалось?.... можно инструкцию, а то уже все варианты перепробовал, он только с панелью согласен дружить
     
  3. Mitrandir

    Mitrandir Гуру

    Можно ли научить есп скачивать прошивку дисплея и заталкивать её в экран?
     
  4. ИгорьК

    ИгорьК Гуру

    Можно, поскольку работа идет через uart. Надо только протокол загрузки отреверсить, да чтобы памяти хватило. А так - плевое дело.
     
  5. Mitrandir

    Mitrandir Гуру

    Т. Е. Он закрытый?

    З. Ы. Хотя можно сделать есп прокси. Редактор что-то шлёт по юарт одной есп та передаёт по вафле второй, та засылает в экран. А что идёт там не важно.
     
    Последнее редактирование: 15 авг 2018
  6. ИгорьК

    ИгорьК Гуру

    Понятия не имею. Как начинается работа с дисплеем? SD карточка загружается... Соединяем с компьютером через USB-UART переходник и грузим проект. Там как-то происходит опознание "свой/чужой" и какими-то порциями грузятся данные.
    Цепляем логический анализатор и сразу все понятно. Осталось сделать. Кому нуДно.
     
  7. Mitrandir

    Mitrandir Гуру

    Вот, нашёл ответ на свой вопрос.

    https://www.itead.cc/blog/nextion-hmi-upload-protocol

    Хочу сделать универсальный джойстик для своих поделок, два рычага, пара кнопок и экран с кастомными контролем под устройство. Экран передаёт юарт команду еспшке, та транслирует исполнителю. Всё контакты вне доступа, хочется перепрошивать дисплей еспшкой. Т. Е. Есп словила по вафле прошивку и передала экрану.
     
    ИгорьК нравится это.
  8. Mitrandir

    Mitrandir Гуру

    У экрана есть перменная sendxy в порт отправляются координаты тыка. Но увы он не отправляет данные при движении пальца по экрану. Сначала я решил,, что экран не умеет фиксировать движения пальца.
    Но прочитав вики нашел инструкцию thdra=1 .При этом пальцем можно рисовать линию. Следовательно движения пальцем можно регистрировать. Вопрос как линию передать в мк. В эмуляторе ничего не передаётся. Хочу сделать вытаскиваемую шторку как в андроиде
     
  9. DIYMan

    DIYMan Guest

    Стесняюсь спросить - на какой event вешаете вызов sendxy?
     
  10. Mitrandir

    Mitrandir Гуру

    Page initialised
     
  11. DIYMan

    DIYMan Guest

    на touch press event - не?
     
  12. Mitrandir

    Mitrandir Гуру

    Так sendxy=1 это установка переменной
     
    DIYMan нравится это.
  13. DIYMan

    DIYMan Guest

    Точно, запамятовал. Тогда - увы, закрытая прошивка имеет свои недостатки, и это как раз тот случай, пмсм.
     
  14. Mitrandir

    Mitrandir Гуру

    Просто непонятно, зачем делать функционал рисования линии, при этом нет возможности эту линию анализировать
     
  15. parovoZZ

    parovoZZ Гуру

    Такого правила в русском языке нет. Местоимения пишутся с маленькой буквы.
     
  16. alp69

    alp69 Форумчанин

    Письменное обращение к собеседнику на "Вы" или на "вы" показывает уровень воспитанности, а также уважения к собеседнику вне зависимости от напряженности диалога. А вот встревание в чужой диалог указывает на обратное.
    И по вопросу грамотности. Если уж Вам так режут глаз орфографические ошибки, то уверяю Вас, что на форуме кроме моих сообщений есть где приложить Ваши познания. Будьте принципиальны не выборочно.
     
    Последнее редактирование: 17 сен 2018
    Mitrandir нравится это.
  17. parovoZZ

    parovoZZ Гуру

    Это пошло из делопроизводства (деловой переписки). Какой-то умник придумал и понеслось. С таким же успехом можно и Ты писать.
     
  18. alp69

    alp69 Форумчанин

    Мне воспитание не позволяет "тыкать" незнакомому человеку. В том числе и в вербальном общении. Исключение - "боевые действия", когда воспитанность может быть воспринята как слабость.
     
  19. ИгорьК

    ИгорьК Гуру

    Знаешь, мир упростился.
    Интернет усредняет все до быдломассы. Здесь разводить политес - трата времени. Игнор - лучший друг. Игнор как кнопка и игнор как часть (анти)культуры общения.
    Стеб - развлечение.
    Нет, я не за культуру двача, но и правила можно отстаивать там, где есть соответствующий материал.
    Форум, любой, всегда проходной двор. Двор он и есть двор - с этим ничего не поделать.
     
    DIYMan нравится это.
  20. parovoZZ

    parovoZZ Гуру

    На заре становления персональных компьютеров считалось, что если посадить миллион обезьян за компьютеры, то рано или поздно они напишут войну и мир. Развитие интернета показало, что это не так.