Модуль записи голоса ISD1820: устройство и подключение

ISD1820 записывает и воспроизводит одно голосовое сообщение длиной до 10 секунд. Разбираем органы управления и связку с Arduino.
Что умеет модуль
ISD1820 — плата для записи и воспроизведения одного звукового фрагмента длительностью до 10 секунд. Запись хранится во внутренней EEPROM-памяти микросхемы и сохраняется после отключения питания. На плате установлен электретный микрофон, в комплекте идут динамик 8 Ом 0,5 Вт и кабель для его подключения к выходу модуля. Работать с платой можно как вручную, кнопками, так и под управлением микроконтроллера.

| Напряжение питания | 3,3–5,5 В |
| Длительность записи | 10 с |
| Расстояние для записи голоса | не более 0,2 м |
| Динамик | 0,5 Вт, 8 Ом |
| Размер платы | 38 x 42 |
Кнопки и разъёмы
Микросхема ISD1820 находится в центре платы. Рядом — три кнопки, разъём для динамика и 12-контактная гребёнка для связи с контроллером.

- REC — пока кнопка нажата, идёт запись с микрофона и горит светодиод; дольше 10 секунд записать нельзя.
- PLAYE — одно нажатие проигрывает сообщение целиком.
- PLAYL — воспроизведение длится, пока кнопка удерживается.

Управление с Arduino
При подключении к Arduino перемычки FT и P-E на модуле переводят в неактивное положение. В схеме из источника контакт REC модуля соединён с D11, а контакт P-E — с D12. Чтобы записать сообщение, на REC подают HIGH и удерживают этот уровень всё время записи. Чтобы запустить воспроизведение, HIGH подают на P-E.

Пример: голосовое предупреждение
Модуль удобно использовать как оповещатель, срабатывающий при появлении человека в определённой зоне. Для этого понадобятся Arduino Nano, ISD1820 с динамиком и ультразвуковой дальномер HC-SR04. На модуль заранее записывают фразу-предупреждение.
Скетч опирается на библиотеку Ultrasonic.h. В нём дальномер подключён к выводам 11 (TRIG) и 10 (ECHO), а контакт P-E модуля — к выводу 12. Программа измеряет расстояние, выводит его в последовательный порт и, если объект оказался ближе 100 см, выставляет на P-E высокий уровень, выдерживает паузу на время звучания фразы и снова опускает линию в LOW.
Типичные неполадки
- Сообщение не записывается — стоит проверить питание модуля и исправность микрофона.
- Сообщение не воспроизводится — проверяют соединения с Arduino и записывают фразу заново.
- Фраза звучит без остановки — нужно снять перемычку P-E и убедиться, что на контакте P-E нет постоянного уровня HIGH.