
Аудиозапись и воспроизведение с использованием DMA и CIPS
Эта демонстрация основана на платформе PIC18F57Q43 Curiosity Nano. В нем подробно описывается использование ADC для записи звука, SPI для взаимодействия с внешним модулем памяти, DAC для воспроизведения, DMA для передачи данных и использования таймеров для определения частоты выборки. Приложение также демонстрирует использование Timer2 HLT и CLC для дебаутирования коммутатора, а также компаратор и PWM для усиления мощности класса D.
Связанная документация
- Звуковая запись и воспроизведение с использованием прямых доступа к памяти и основной независимой периферийности (AN3548)
Программное обеспечение используется
- MPLAB® X IDE 6.15 или более новее (microchip.com/mplab/mplab-x-ide)
- MPLAB® XC8 2.45 или новый компилятор (microchip.com/mplab/compilers)
- Mplab® Code Configurator (MCC) 5.3.7 или более новее (microchip.com/mplab/mplab-code-configurator)
- Библиотеки устройств MPLAB® Configurator (MCC) PIC10 / PIC12 / PIC16 / PIC18 MCU (microchip.com/mplab/mplab-code-configurator)
- Поддержка устройства Microchip PIC18F-Q (1.23.425) или более новая (packs.download.microchip.com/)
Используется аппаратное обеспечение
- PIC18F57Q43 Curiosity Nano Excalation Kit (DM164150)
- База Curiosity Nano для кликов ™ (AC164162)
- MIC Click (Mikroe-2563)
- Flash 2 Click (Mikroe-2267)
- Усилитель мощности реализован на прото-щелчке (Mikroe-1507)
Устройство оборудования
Необходимые соединения между платой PIC18F57Q43 Curiosity Nano и необходимыми платами кликов показаны ниже:
- Расширение Click 1 подключается к плате MIC Click. Это использует штифт AN1 для передачи аналогового голосового сигнала в ADC на борту PIC18F57Q43. MIC Click имеет кондиционирование сигнала и схему фильтрации на борту
- Расширение Click 2 подключается к плате Flash 2 Click. Эта плата имеет чип флэш -памяти SST26VF064B от MicroChip и использует SPI для связи с микроконтроллером
- Расширение Click 3 подключается к схеме усилителя мощности класса D на прото -щелчке
Любопытство Nano Board Connections

Прото, щелкните цепь

Полная настройка системы

Прото

Настройка программного обеспечения
MCC используется для настройки следующего. Обратитесь к проекту MPLAB X для получения подробной информации и настроек для каждого компонента.
- Настройка системы - процессор и прерывания
- TMR0 - используется для генерации таймера выборки 10 кГц
- ADCC - используется для выборки и квантования аналогового аудиосигнала
- DAC1 - используется для вывода аналогового аудиосигнала
- SPI1 - используется для связи с внешней памятью модуля
- DMA (DMA1, DMA2, DMA3, DMA4, DMA5, DMA6) - операции передачи данных
- PWM1 - используется для создания сигнала пилотушки для усилителя звука
- CMP1 - используется для сравнения формы сигнала Sawtooth с выходом DC DC DAC для получения сигнала ШИМ для управления звуковым динамиком
- TMR2/4 - наряду с CLC1/2, используются для дебатации кнопок
- CLC1/2 - вместе с TMR2/4, используются для дебатации кнопок
- UART1 - используется для отправки и получения сообщений отладки
Операция
Чтобы запустить приложение, используйте кнопку на плате Nano Curiosity.
- По умолчанию приложение находится в режиме «Idle».
- Дважды нажмите кнопку, чтобы ввести режим «Запись». Система будет продолжать записывать, пока кнопка не будет нажата снова, чтобы остановиться, или не заканчивается память. Если присутствует внешняя память, там будет храниться запись. В противном случае запись будет храниться во внутренней флэш -памяти.
- Нажмите кнопку один раз, чтобы ввести режим «воспроизведения». Система будет продолжать воспроизводить записанный звук, хранящийся в памяти, пока кнопка снова не будет нажата, чтобы остановиться, или в случае воспроизведения всей записи.
- Долго нажмите кнопку, чтобы ввести режим «стирания» и стирайте всю запись из памяти.
Специальная кнопка доступна на прото -щелчке вместе с усилителем. Долго нажмите эту кнопку, чтобы ввести режим «Переход», в котором система действует как простой усилитель и не записывает и не хранит звук. Нажмите эту специальную кнопку еще раз, чтобы покинуть режим «Переход».
Аудио будет воспроизведено через усилитель класса D на прото -щелчке. На борту прото: есть два перемычки:
- Jumper J1 выбирает источник аудио входа между микрофоном и микрофоном для наушников. (Всегда выберите микрофон, нажмите, когда микрофон для наушников не подключен к 3,5 -мм аудио -разъем)
- Jumper J2 выбирает аудио -вывод между внешним динамиком и 3,5 -миллиметровым звуковым домом. Внешний динамик или наушники могут быть подключены к 3,5 -мм аудиоразъем.
Примечание. Рекомендуется избегать выбора наушников как для аудио, так и для ввода MIC в режиме «PassThrough», чтобы избежать индукции шума.
Краткое содержание
DMA - отличный способ передачи данных между регистрами, ОЗУ и вспышкой в различных конфигурациях. Это обеспечивает скорость и простоту использования, в дополнение к освобождению процессора для выполнения других задач.
ЦАП обеспечивает гораздо лучшее воспроизведение выбранных аудиосигналов из-за более высокого 8-битного разрешения. Забуференный выход даче образует отличное соединение с различными периферийными устройствами непосредственно, без ухудшения сигнала. Это может быть использовано вместе с PWM и компаратором, чтобы сформировать превосходный усилитель мощности класса D.
Timer2 HLT может быть объединен с CLC для превосходной техники дебаутирования без кода.