Перейти до публікації
renoshnik

базовый блок озвучки

Рекомендовані повідомлення

Разрабатывая разные устройства с функцией звукового оповещения, часто сталкиваюсь с проблемой выбора.

Зачастую функция озвучки критически ограничивает доступный объем памяти для основной программы, снижает быстродействие или конфликтует по прерываниям.

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

 

Необходимые данные от блока управления к блоку озвучки передается по UART порту. Формат данных выглядит так :

 

sNN.NN.NN (s file name. number of repetition. pause time)

 

s – признак начала строки данных

1.NN – имя файла для воспроизведения (имя задается цифрами)

2.NN – количество повторов

3.NN – пауза в секундах между повторами

 

Формат звуковых файлов WAV 8-bit_22khz

 

В устройстве предусмотрено четыре (при желании можно увеличить) банка памяти для одновременного озвучивания четырех событий.

 

Ниже видео, в котором я постарался показать, как это все работает, вначале немного теории, потом два примера подключения базового блока к девайсам.

 

https://www.youtube.com/watch?v=vuKjZ1qR2qA

 

Теперь можно без особых проблем делать и говорящие сигнализации и информаторы в салон и прочие девайсы со звуковыми оповещениями.

 

Для экспериментов, ниже ссылка на тестовую прошивку (максимальная строка s09.03.30 и два банка)

Посилання

 

Arduino 09 – ATmega pin 15/1 – **** аудио выход WAV PCM Mono 22050Hz 8bit

Arduino 05 – ATmega pin 11/5 – bank_1 СД

Arduino 06 – ATmega pin 12/6 – bank_2 СД

Serial.begin(57600)

Поділитися повідомленням


Посилання на повідомлення
Поділитися на інших сайтах

Будь ласка, увійдіть для коментування

Ви зможете залишити коментар після входу



Увійти зараз

×