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

DWIN DGUS. Проигрывание аудиофайлов.

Оглавление

Встречается много задач в которых необходимо использовать не зуммер для отклика нажатия, а полноценные аудиофайлы информирующие о работе устройства, будь то сигналы тревоги или информация о начале какого-либо процесса. Для реализации данного функционала в дисплеях DWIN присутствуют встроенные динамики, либо выходы на динамик. Если в панели динамик отсутствует, то можно связаться с производителем для проведения кастомизации панели и добавления выхода для подключения динамика. Прошлые статьи:

DWIN. Подготовка дисплея к работе и загрузка демо-проекта

DWIN. Знакомство с программным обеспечением DWIN Graphic Utilized Software. Hello World

DWIN. Связываем STM32 Nucleo и дисплей.

DWIN. Элемент Real-Time Curves, чертим графики.

DWIN DGUS. Элемент Artistic Variables. Отображаем цифры иконками.

DWIN DGUS. Страница защищённая паролем. Пакетное считывание и запись. Интерфейс RS485

Дисплей

Для реализации проекта будет использован промышленный дисплей DMG80480T050_A5WTC. Рассмотрим характеристики дисплея:

Диапазон рабочих напряжений: 6В - 36В.

Потребляемый ток: 60-130мА.

Разрешение: 800х480.

Тип матрицы: IPS 16.7M цветов.

Тип сенсорной панели: Емкостная.

Яркость подсветки: 250нит.

Flash память: 16 Мб.

Встроенный RTC.

Ресурс подсветки - 30000 часов.

Стандарт защиты от воздействия окружающей среды: IP65 на лицевой панели.

Интерфейсы: UART2 (RS232),UART4 (RS232), UART5(RS485)

DMG80480T050_A5WTC
DMG80480T050_A5WTC

Проект

В проекте будут использованы аудиофайлы московского метро из свободного доступа. Будет показана реализация включения аудиофайлов как командами с внешнего устройства, так и с помощью нажатия на стандартные элементы DGUS.

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

Руководство из документации
Руководство из документации

1. Формируем WAE файл.

2. Включаем в CFG файле бит проигрывания аудиофайлов.

3. Добавляем WAE файл в папку DWIN_SET а также в файле CFG устанавливаем местоположение файла WAE и следим за тем, чтобы файл не пересекался с другими файлами в памяти.

DRAW.IO

За основу проекта взята Калининская линия метро города Москва. Формируем фоновые изображения для каждой станции метро.

Каждая стрелка будет включать аудиофайл сообщающий о следующей станции метро, в одну сторону о станции будет сообщать мужской голос, в обратную сторону женский голос.

Подготовка аудиофайлов

Используем аудиодорожку из открытых источников и нарезаем файлы по фразам. Для нарезки использовалась программа mp3directcut.

Полученные нарезанные файлы.
Полученные нарезанные файлы.

Получилось 29 файлов. Файлы будут размещены на GitHub вместе с проектом.

CFG файл

Согласно документации устанавливаем в байт 0x07 номер по которому будет находиться аудиофайл WAE.

-5

Пропишем в адрес 0x07 40 ячейку памяти т.е. значение в шестнадцатеричной системе 0x28.

CFG файл
CFG файл

При формировании CFG файла важно чтобы вторая и третья строки были стерты.

DGUS

WAE Generator

Формируем аудиофайлы с помощью WAE Generator.

 WAE Generator
WAE Generator

Добавляем 29 аудиофайлов которые были получены ранее.

 WAE Generator
WAE Generator

Нажимаем на кнопку Generator WAE и формируем файл с номером согласно ранее настроенному в CFG файле, в нашем случае это 40.wae. Сохраняем файл в папку DWIN_SET.

-9

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

Формируем *.ICL файл, и добавляем 8 изображений.

-10

Добавляем элемент "Return Key code" и настаиваем его на включение необходимого аудиофайла при нажатии.

Для этого указываем в Key Value (0x) номер аудиодорожки в формате 0xYY01 - где YY номер аудиодорожки в HEX формате. VP указываем 00A0 - адрес воспроизведения аудиодорожки. Также для каждой кнопки указываем Page Switching параметр - номер страницы для перехода при нажатии.

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

Docklight - формируем команды для взаимодействия с дисплеем

Используем руководство из документации

-12

Отправляем команды 5A A5 07 82 00 A0 XX 01 YY 00

Где:

5A A5 - стартовые байты.

07 - длина отправляемого пакета.

82 - команда на запись.

00 A0 - адрес управления аудиофайлами.

XX - номер аудиофайла в HEX формате.

01 - фиксированное значение.

YY - громкость аудио сигнала.

00 - прогресс проигрывания аудиофайла, только для чтения.

Видео

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

Заключение

В данной статье был создан демо-проект с возможностью проигрывания аудиофайлов как с помощью встроенных инструментов DGUS как и внешних команд.

Ссылка на GitHub: https://github.com/VB-Radchenko/DWIN-Lesson-9-Audio-file

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

Email: Info_dwin@mail.ru

VK: https://vk.com/radchenko_vb

Telegram: https://t.me/Radchenko_VB

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

Скидочный купон на 5$ для официального магазина AliExpress - DWVLPRO