Holtek: в мире музыки и звуков Компоненты

advertisement
KiT#41(6)_web.qxd
9/29/2004
2:18 PM
Page 84
Компоненты
Компоненты и технологии, № 6’2004
Holtek:
в мире музыки и звуков
Звуки музыки окружают человека практически всю жизнь — от рождения и до смерти.
И если несколько лет назад эти локальные источники можно было пересчитать по пальцам:
телевизор, радиоприемник, магнитофон и т. п., то сегодня музыкальное сопровождение
нашей жизни простирается от игрушек до сотовых телефонов и флэш&памяти
со встроенным приемником.
Николай Ракович
ирма Holtek, хорошо известная своими микросхемами памяти и микроконтроллерами, занимается также выпуском компонентов для музыкальной электроники. Для создания
и воспроизведения музыкальных и немузыкальных
звуков Holtek выпускает различные ИС: 8-разрядные микроконтроллеры для формирования музыкальных мелодий и речи (Music MCU, Voice MCU
и Q-Voice); семейства микросхем для создания звуковых эффектов (Sound Effects Series), мелодий
(Piano Series), речи (EasyVoice Series).
Начнем с семейства музыкальных синтезаторов
НТ36хх (табл. 1, блок-схема на рис. 1 на примере
НТ36А0).
Ф
info@chipselect.ru
Таблица 1
Обозна& Напряжение Память Память
Выводы
Таймер Полифония
чение
питания, В программ данных входа&выхода
ЦАП
Корпус
16DIP, 20SOP
НТ36А4
2,4×5,0
32К×16
208×8
8
8 бит×2
8
16 бит×1
НТ36А3
2,4×5,0
32К×16
208×8
20
8 бит×2
8
16 бит×1 28SOP, 48SSOP
НТ36А2
2,4×5,0
64К×16
208×8
20
8 бит×2
8
16 бит×1 28SOP, 48SSOP
НТ36А1
2,4×5,0
64К×16
208×8
24
8 бит×2
8
16 бит×2
48SSOP
НТ36А0
3,6×5,0
64К×16
208×8
28
16 бит×2
16
16 бит×2
48SSOP
НТ36В2
3,6×5,0
128К×16
512×8
32
16 бит×2
16
16 бит×2 28SOP, 56SSOP
НТ36В0
3,6×5,0
256К×16
768×8
36
16 бит×2
16
16 бит×2
Бит 3
Бит 2
Бит 1
Бит 0
CH3
CH2
CH1
CH0
FR8
28SOP, 64QFP
Таблица 2
Регистр
Функция
20Н
Выбор номера канала
20Н
Выбор параметра изменения
VM
FR
21Н
Выбор номера блока
BL3
BL2
BL1
BL0
FR11
FR10
FR9
FR7
FR6
FR5
FR4
FR3
FR2
FR1
FR0
ST15
ST14
ST13
ST12
ST11
ST10
ST9
ST8
ST7
ST6
ST5
ST4
ST3
ST2
ST1
ST0
RE14
RE13
RE12
RE11
RE10
RE9
RE8
RE6
RE5
RE4
RE3
RE2
RE1
RE0
ENV1
ENV0
VL3
VL2
21Н
22Н
23Н
24Н
25Н
25Н
26Н
Выбор номера частоты
Выбор начального адреса
Выбор формата сигнала
Выбор адреса повторения
27Н
Выбор типа огибающей
27Н
Выбор параметров вибрато
27Н
29Н
27Н
2АН
84
Регулировка левого канала
Регулировка правого канала
Бит 7
Бит 6
Бит 5
Бит 4
WBS
RE7
A_R
VL7
VR7
VL6
VR6
VL9
VL8
VL5
VL4
VR5
VR4
VR3
VR2
VL1
VL0
VR9
VR8
VR1
VR0
Рис. 1
Эти 8-разрядные высокоэффективные RISС-микроконтроллеры специально разработаны для музыкальных приложений и совмещают микроконтроллер с 16-канальным синтезатором. В памяти программ хранятся как команды управления, так и коды мелодий (в табличном виде), причем все это легко перепрограммируется. В состав НТ36хх входит
встроенный 8-разрядный микропроцессор, с помощью которого программируется синтезатор для
формирования мелодий установкой соответствующего специального регистра с адресом 20Н-2АН.
Рассмотрим только те функции микроконтроллера, которые отвечают за мелодии.
В ПЗУ микроконтроллера определенная область
отведена под память таблицы мелодий (wavetable
ROM); 16 ячеек ST(15~0) используются для определения начального адреса каждого образца мелодий
из таблицы и чтения данных о форме сигнала.
В НТ36А0 реализована 21 выходная адресная шина
по адресным шинам WA(16~0), ST(15~0) используются для локализации основных 16 битов, то есть
WA(16:5) и неизвестные данные из WA(4~0) всегда
устанавливаются в 00000b. Таким образом, начальный адрес каждого образца мелодии находится
по адресу, кратному 32. С другой стороны, образец
мелодии не может быть считан правильно, если
стартовый код неверен.
Работа 16-канального синтезатора задается специальными регистрами, расположенными по адресам 20Н-2АН (табл. 2).
Выбор одного из 16 выходных каналов выполняется соответствующими битами выбора номера каwww.finestreet.ru
KiT#41(6)_web.qxd
9/29/2004
2:18 PM
Page 85
Компоненты
Компоненты и технологии, № 6’2004
нала СН (3~0) регистра 20Н. При записи
в этот регистр синтезатор будет автоматически выдавать соответствующий код ИКМ
(импульсно-кодовой модуляции). Этот регистр используется так же, как ключ начального воспроизведения, и записывается после
того, как все другие регистры функций уже
определены. Еще два бита (VM, FR) в этом
регистре определяют регистр, который будет
модифицироваться в выбранном канале.
Частота выхода задается данными регистров 21Н и 22Н (BL3~0, FR11~0), что, кстати,
позволяет сформировать шкалу градаций:
при FR (11:0), равном 800Н, и BL (3:0), равном 6Н, данные каждого образца будут выдаваться последовательно. Если тактовая частота fosc=12,8 МГц, то частота на выходе определяется как:
где frecord и SR — частота и частота выборки
кода образца соответственно.
Определение начального адреса в НТ36хх
реализовано двумя способами: через адрес
ПЗУ программ и через начальный адрес кода
ИКМ. Для определения начального адреса
каждого кода ИКМ и чтения данных о форме
сигнала используется ST(15~0).
С целью более экономичного использования памяти данных в НТ36А0 предусмотрен
выбор с помощью WBS одного из двух форматов данных образцов мелодий каждого кода ИКМ: 8 разрядов или 12. Вид форматов
приведен на рис. 2 (В — один байт данных;
1Н — старший полубайт; 1М — средний полубайт; 1L — младший полубайт).
Рис. 2
Если выбранный образец необходимо воспроизвести несколько раз, то для этого в регистрах 25Н и 26Н задается адрес точки повторения. При этом на выходе формируется
сигнал от начального кода до конечного
(один раз), а затем постоянно сигнал в диапазоне от адреса повторения до конца (код 80).
В контроллерах серии НТ36хх реализована
независимая регулировка громкости по правому и левому каналам — биты VL(9~0)
и VR(9~0) соответственно в регистрах 27Н,
29Н, 2АН. Регулировка громкости имеет 1024
уровня; 000Н — максимальная громкость,
3FFН — минимальная.
Программирование огибающей сигнала
упрощено установкой соответствующих битов ENV[1~0] и A_R для формирования эффекта вибрато.
Звуковые данные на выходе микроконтроллера выдаются в последовательном режиме в виде 16-разрядного цифрового сигнала,
начиная с младшего значащего разряда. Если
тактовая частота равна 12,8 МГц, то скорость
www.finestreet.ru
Рис. 3
Рис. 4
выборки составляет 50 кГц для правого и левого каналов, причем передача данных
в НТ36хх для работы с ЦАП осуществляется
по интерфейсу IIS. Типовая схема включения
приведена на рис. 3.
На базе микроконтроллеров серии НТ36хх
разработаны микроконтроллеры серии НТ38хх:
полифонические музыкальные проигрыватели НТ38А1, НТ38А3 и музыкальный генератор на 12 мелодий НТ38А2.
НТ38А1 представляет собой 16-канальный
музыкальный проигрыватель на восемь инструментов и восемь типов ударных.
Для связи с внешними устройствами используется 3-проводной интерфейс. Стандартные
файлы General MIDI (GM) версии 1,0 преобразуются в исполняемый файл программой
преобразования (разработка Holtek). Вставка
в MIDI-файл специальных команд позволяет
управлять четырьмя светодиодами (типовая
схема включения — на рис. 4).
В состав НТ38А1, работающего с тактовой
частотой 8 МГц, входит один 16-разрядный
ЦАП с потенциальным выходом (по напряжению) и 6-канальный табличный генератор
мелодий.
НТ38А3 содержит 18 инструментов и 12 ударных, работает с тактовой частотой 11,059 МГц,
имеет два ЦАП на 16 разрядов со стереовыходом по напряжению и 16-канальный генератор мелодий (естественно, табличный).
Схема включения аналогична НТ38А1.
Файлы MIDI должны соответствовать спецификации 1,0 GM и сохраняться в формате
MIDI Format 0. Максимальное число треков
равно 16, причем десятый трек — резерв для
ударных. Временная база файла MIDI должна быть кратна 24, например, 24, 48, 72 и т. д.
С каждым музыкальным инструментом
в спецификации GM сопоставляется число
от 1 до 128. Кроме этого, имеется 61 ударный
инструмент (нумерация от 25 до 85) и 16 треков (нумерация от 1 до 16). Любой ноте
в MIDI-файле соответствует число от 0 до 127,
причем нота «до» средней октавы равна 60.
Диапазон, поддерживаемый программой,
можно менять, действительное значение
имеется в руководстве пользователя. Максимальное число доступных звуковых каналов — 8.
Величину уровня сигнала (громкость)
можно изменять в диапазоне от 0 до 127 изменением параметра громкости (Volume)
или быстродействия (Velocity). Диапазон изменения быстродействия — 40`280,
при этом он может меняться незамедлительно, если в состав одного файла входит несколько видов темпа.
Программа преобразования con_midi
midfile переведет формат MIDI-файла
в файл формата BIN, который после этого
будет использоваться проигрывателями
НТ38А1/3. Те инструменты или ударные,
которые не распознаны, будут заменены
первым инструментом или ударным
из банка звуков.
Музыкальный генератор НТ38А2 — СБИС,
выполненная по КМОП-технологии (блок-
85
KiT#41(6)_web.qxd
9/29/2004
2:18 PM
Page 86
Компоненты
Компоненты и технологии, № 6’2004
Рис. 5
Рис. 6
Таблица 4
Вывод для подключения кнопки
РА1: выбор мелодии
Таблица 3
РА3: телефонная кнопка Hold
РА6: определение звонка
РА7: определение сигнала отбоя
Завершая краткий обзор ИС фирмы Holtek
для музыкальных приложений, необходимо
хотя бы упомянуть о микросхемах для обработки голоса (как известно, собственный голос — самая приятная мелодия).
8-разрядные микроконтроллеры серии
НТ86ххх (табл. 6) со встроенным синтезато-
НТ86768
НТ86576
Таблица 6
НТ86192
При выборе конкретного типа ИС необходимо учитывать, что серия НТ36хх — масочная, то есть по определению хороша для
крупносерийного производства. Минимальное количество микросхем в партии поставки составляет:
HT36A4 — 15 500 шт.
HT36A3 — 15 000 шт.
HT36A2 — 11 500 шт.
HT36A1 — 11 500 шт.
HT36A0 — 8 500 шт.
HT36B2 — 7 500 шт.
Для экспериментальных работ и при мелкосерийном производстве рационально использовать ИС серии НТ38хх.
Номенклатура выпускаемых Holtek ИС
для различных музыкальных приложений
не ограничивается сериями НТ36хх и НТ38хх.
Для клавишных инструментов выпускается
серия Piano (табл. 5).
РА2: громкость
НТ86144
Название мелодии
Колокольчики (Jingle bells)
Кармен
Happy Chinese New Year
Эдельвейс (Edelweiss)
Going home
PAPALA
Классика
Listen to the rhythm of the falling rain
Рок;н;ролл
Happy Birthday
Do Re ME
Штраус
НТ86072
Номер мелодии
1
2
3
4
5
6
7
8
9
10
11
12
Функция
Этой кнопкой выбирается и проигрывается одна из 12 мелодий.
Если кнопка нажата и удерживается, то выбирается и воспроизводится следующая мелодия
из списка. При нажатии кнопки Hold на телефоне активируется функция удержания линии
и входящим звонком воспроизводится мелодия.
Управление громкостью мелодии за 8 шагов.
Каждое нажатие уменьшает громкость на один уровень. После достижения
минимальной громкости следующее нажатие возвращает громкость на максимум.
При нажатии этой кнопки во время телефонного разговора линия будет удерживаться,
а позвонивший будет слышать мелодию. Если во время воспроизведения мелодии поднимается
трубка, то мелодия сразу прекращается. После этого функция Hold блокируется на 2 секунды.
При поступлении сигнала вызова частотой 13÷90 Гц через 200 мс
начинается автоматическое воспроизведение мелодии,
которое прекращается через 6 секунд после прекращения сигнала вызова.
Определяется состояние телефонной линии.
Когда линия свободна, то возможен выбор мелодии и ее воспроизведение.
При снятии трубки воспроизведение прекращается и активизируется функция Hold.
НТ86384
схема на рис. 5) и предназначенная для использования в телефонах (полифонический
звонок), игрушках, дверных звонках и т. п.
Встроенный контроллер и табличный синтезатор мелодий (табл. 3), напряжение питания от 2,4 до 5,0 В, детектор пониженного напряжения, сигнал отбоя, полифония на 8 нот
и 16-разрядный ЦАП делают эту ИС достаточно универсальной. Многофункциональность НТ38А2 расширяется и за счет дополнительного режима управления с помощью
кнопок (табл. 4). Подключение в режиме управления от кнопок показано на рис. 6.
ПЗУ голоса, бит 1536К 3072К 4096К 8192К 12288К 16392К
Длительность
воспроиз;
ведения, с
72
144
192
384
576
768
ром голоса и генератором тональной частоты предназначены для применения в системах безопасности, генераторах звуковых эффектов, обучающих системах. Минимум
внешних элементов не создает проблем при
разработке (рис. 7).
Модулятор голоса НТ8950 (блок-схема
на рис. 8) сдвигает частоту входного голосового сигнала, создавая на выходе эффекты
вибрато (Vibrato) или робота (Robot).
Эффект вибрато заключается в изменении частоты входного сигнала вверх-вниз
с частотой 8 Гц. Функция робота — преобразование входного голоса в голос робота:
металл в голосе! Каждый из эффектов выбирается нажатием соответствующей кноп-
Ритм
Мелодии
(демо)
НТ337С
2,4×5,0
37
16
16
22
НТ337В
2,4×5,0
37
8
8
8
НТ3496
2,4×5,0
49
10
10
8
НТ3497
2,4×5,0
48/54
100 100
10
НТ3612
2,4×5,0
61
20
20
8
НТ3614
2,4×5,0
61
20
20
5
86
48SSOP
Тембр
Напря&
Количество
Наиме& жение
кнопок
нование питания,
клавиатуры
В
Корпус
Таблица 5
Рис. 7
www.finestreet.ru
KiT#41(6)_web.qxd
9/29/2004
2:18 PM
Page 87
Компоненты
Компоненты и технологии, № 6’2004
Рис. 8
Рис. 9
Рис. 10
ки, по умолчанию (при включении питания) устанавливается эффект робота.
Встроенный микрофонный усилитель,
8-разрядные АЦП и ЦАП позволяют получить на выходе высококачественный сигнал
с хорошим соотношением «сигнал — шум»,
а драйвер светодиодного индикатора управляет вспышками светодиода в зависимости
от громкости голоса на входе (один из вариантов включения — на рис. 9). Диапазон
применения — от игрушек до аудиосистем
и телефонов.
www.finestreet.ru
Для различных аудиосистем, включая караоке, телевизоры, видео и звуковое оборудование предназначен процессор для создания эффектов эха и объемного звучания
НТ8970. В состав ИС входят предварительный усилитель, статическое ОЗУ на 20 кбайт,
АЦП и ЦАП (блок-схема на рис. 10, варианты реализации режимов — на рис. 11, 12).
Описание принципов работы и вариантов
применения ИС голосовых серий НТ81хх
и НТ86хх будет рассмотрено в следующей
статье.
87
KiT#41(6)_web.qxd
9/29/2004
2:18 PM
Page 88
Компоненты
Компоненты и технологии, № 6’2004
Рис. 11
Рис. 12
88
www.finestreet.ru
Download