Найти в Дзене
Владимир Радченко

DWIN. FAQ. Анимированная заставка и анимированные иконки.

FAQ - новая рубрика быстрых ответов. Посты данной рубрики будут не столь глубоко затрагивать темы, но решать точечные задачи с которым чаще всего обращаются. Пример на основе дисплея DMG80480C050_03WTC. В данном посте решаем как сделать анимированную заставку и анимацию иконок. Для примера возьмем видео с стока и преобразуем его к отдельным картинкам с разрешением 800х480. Для анимации конки возьмем gif с открытого доступа.
Сайт для преобразования gif в отдельные картинки. Работа с проектом Генерируем файл фоновых изображений 32.icl из одной картинки 800х480 белого цвета: генерируем файл заставки из папки frame 33.icl: Сохраняем файл в папку DWIN_SET: Файл сгенерирован размером 700кб. Одна ячейка памяти равно 256кб, т.е мы заняли 3 ячейки, 33, 34 и 35. Следующий файл будет сгенерирован в ячейку 36, чтобы не перекрыть область памяти. Генерируем файл с иконками, в нашем случае вентилятор: Сгенерированный файл также размещаем в папку DWIN_SET. Создаём анимацию вентилятора, исполь

FAQ - новая рубрика быстрых ответов. Посты данной рубрики будут не столь глубоко затрагивать темы, но решать точечные задачи с которым чаще всего обращаются.

Пример на основе дисплея DMG80480C050_03WTC.

В данном посте решаем как сделать анимированную заставку и анимацию иконок.

Для примера возьмем видео с стока и преобразуем его к отдельным картинкам с разрешением 800х480.

Для анимации конки возьмем gif с открытого доступа.
Сайт для преобразования gif в отдельные картинки.

Работа с проектом

Генерируем файл фоновых изображений 32.icl из одной картинки 800х480 белого цвета:

генерируем файл заставки из папки frame 33.icl:

-2

Сохраняем файл в папку DWIN_SET:

-3

Файл сгенерирован размером 700кб. Одна ячейка памяти равно 256кб, т.е мы заняли 3 ячейки, 33, 34 и 35. Следующий файл будет сгенерирован в ячейку 36, чтобы не перекрыть область памяти.

Генерируем файл с иконками, в нашем случае вентилятор:

Сгенерированный файл также размещаем в папку DWIN_SET.

Создаём анимацию вентилятора, используем элемент Animation icon:

-5

VP: 6000 - адрес переменной

Stop value - значение переменной 6000 при котором будет отображаться иконка stop icon ID. Устанавливаем в 1.

Start Value - значение переменной 6000 при котором начнется анимация. Устанавливаем в 2.

icon File - номер файла ICL.

stop icon ID - номер иконки в файле ICL которая отобразится при значении Stop value в переменной 6000.

start icon ID - номер иконки в файле ICL которая отобразится при значении start value в переменной 6000, и с которой начнется анимация.

end icon ID - номер иконки на которой анимация завершится или зациклиться если будет установлен данный параметр.

Это основные параметры которые сейчас необходимы.

Генерируем файлы, сохраняем на uSD карту и загружаем на дисплей.

-6

Включаем дисплей, будет видно белый экран, отправляем команду:

5A A5 05 82 60 00 00 02 - записываем в переменную 6000 значение Start Value т.е. 2.

Видим воспроизведение анимации:

-7

Отправляем команду 5A A5 05 82 60 00 00 01 - записываем в переменную 6000 значение Stop Value т.е. 1.

Таким же образом добавляем анимацию из файла 33.ICL с размером изображений 800x480:

-8

Изменяем значение Start Value и Stop Value на 0 и 1 соответственно.

Изменяем файл ICL на 33 и ставим последнее изображение на значение 50 - последняя картинка в анимации.

Генерируем файлы и загружаем на дисплей.

-9

5A A5 05 82 60 00 00 01 - команда отключения анимаций
5A A5 05 82 60 00 00 02 - команда включение анимации вентилятора
5A A5 05 82 60 00 00 00 - команда окно загрузки

При изменении параметра Time of Single icon изменяется скорость переключения изображений установим этот параметр на 10.

-10

Как видно скорость окна загрузки была уменьшена.

-11

Ссылка на GitHub.

Для компаний под проект есть возможность получить бесплатный образец. Образцы есть в наличии в РФ.

Для получения образцов, оптовых закупок, персональных скидок, технической поддержки и общим вопросам обращайтесь:

Email: rvb@dwin-global.ru

VK: https://vk.com/radchenko_vb

Telegram: https://t.me/Radchenko_VB

Сообщество VK https://vk.com/public208909284

Русскоязычный сайт: https://dwin-global.ru/