≡ Передовица » Hardware » МУАРМ » ЯАВМИ (акустический ввод и адаптер MIDI)
ЯАВМИ (акустический ввод и адаптер MIDI)Представляет собой три отдельных блока: MIDI-интерфейс, предположительно синтезатор тона (аналогичный PC Speaker) и спектроанализатор. На последнем следует остановится подробнее: Агат не мог выполнять чисто цифровой анализ звука в реальном времени - из-за малой мощности ЦПУ. В данном устройстве была предпринята попытка реализовать аналогово-цифровой спектроанализатор. Он устроен следующим образом: сигнал с линейного входа, миновав АРУ, пропускается через полосовой фильтр, центральную частоту которого можно изменять программно (примерно от 150 до 2900 Гц). После этого сигнал попадает на амплитудный детектор и счётчик, значения на выходах которых программно доступно для ЦПУ. Перестраивая фильтр на необходимую частоту (фиксированную или сканируя диапазон), программа следит за состоянием амплитудного детектора. Он срабатывает в тот момент, когда основная гармоника входного сигнала приближается к частоте фильтра. Затем, используя счётчик, программа может точно определить значение частоты входного сигнала. Одно из применений этого контроллера - выполнение программы "Высота" (на страничке есть видеоролик). КонструкцияСостоит из трёх БИС, выполняющих следующие функции:
Кроме того на плате расположен блок аналоговой обработки сигнала, состоящий из следующих участков:
ВозможностиУправляемый фильтрАналоговый сигнал с уровнем 0.2 в поступает на предварительный усилитель, автоматический регулятор уровня (впрочем, я не заметил его существенного влияния...) и затем на управляемый полосовой фильтр. Частоту пропускания фильтра можно задавать, программируя вв55. Пределы регулирования - примерно 150-2900 Гц. Сигнал с фильтра поступает на формирователь ТТЛ-сигнала (усилитель-ограничитель), после которого идёт на счётчик ви53, канал 1. Управляя этим каналом, можно вычислить точное значение выделяемой фильтом частоты. Кроме того сигнал с формирователя поступает на вход вв55.C5 - с его помощью низкие частоты можно анализировать непосредственно центральным процессором. Также можно запрограммировать C5 на вывод и использовать канал 1 для подсчёта программно-формируемых событий. Одновременно сигнал с фильтра поступает на детектор наличия сигнала - он формирует "1" на входе вв55.C4 при наличии переменного сигнала определённого (задаётся при регулировке схемы) уровня на выходе фильтра. Таким образом управляемый фильтр позволяет оценить спектр входного сигнала: перестраивая фильтр вдоль всего диапазона частот нужно следить за детектором наличия сигнала. При его срабатывании, используя счётчик и формирователь ТТЛ-сигнала, можно определить точное значение частоты (примерное значение можно узнать сразу, исходя из настройки фильтра). Теоретически, можно попробовать анализировать амплитуду узкополосного сигнала - расстраивая фильтр, следить за детектором сигнала. Момент его переключения будет связан с АЧХ фильтра (которая может быть измерена заранее) и амплитудой сигнала. ТаймерКанал 0 имеет на входе тактовую частоту 1 МГц, а вход разрешения счёта - от канала 1. Его можно использовать как счётчик реального времени. На вход канала 2 подаётся постоянная частота около 8 КГц. Через делитель уровня этот канал выводится на внешнее гнездо, таким образом плата может синтезировать однотонный звук без использования центрального процессора (a'la PC Speaker) либо использоваться как счётчик реального времени.
Со вторым каналом таймера, тем не менее, есть пара непонятных моментов.
Во-первых, он всегда включен (вход разрешения счета подключен к +5 Вольт). Это значит, что звук будет генерироваться постоянно.
Во-вторых, подаваемая на него частота слишком низкая, чтобы получать музыкальные ноты с достаточной точностью.
Например, частота ноты "Фа-диез" - 370 Гц. Если взять делитель 22, то получится 362.7 Гц, а если 21 - то 380 Гц. Звук будет сильно "фальшивить".
MIDI интерфейсMIDI интерфейс построен на вв51, тактируемой частотой 500 КГц и дополненной оптронной развязкой входа и буферным усилителем выхода. Управление каналом программное, за исключением вывода RxRDY - сигнал появления данных на входе может быть прочитан через вв55, вход C7, а также вызвать прерывание IRQ, если это будет разрешено програмно (для чего используется флажек на триггере тм2). Адреса регистровn - номер слота + 8, по умолчанию второй:
Принципиальные схемы
Замеры АЧХ управляемого фильтраВходное 0.2 в, контролируем выход DA4.9 и DA5.13, ищем пики амплитуды: Частота DA1 DA2 120 80 0 120 /слабо/ ff 00 160 0 ff 170-200 10 10 360 20 20 500 30 28 50 18 80 10 b0 8 660 20 80 660 /слабо/ 80 20 660 38 40 660 10 e0 1000 30 80-90 50 50 80 30-40 b0 20-30 20 ff ff 20 1400 80 80 2000 b0 e0 80 ff 50 -- 80 f0 f0 80 2910 ff ff ??? 0 0 / Не удалось найти пик/ Если DA1 > DA2 пик получается более размытый по частоте и заметно меньший по амплитуде. БлагодарностиВыражаем признательность участникам форума monitor.net.ru за помощь в исследовании контроллера. * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * |