Мазмұны:

STM32CubeMx микрофон (STM32F407VG): 5 қадам
STM32CubeMx микрофон (STM32F407VG): 5 қадам

Бейне: STM32CubeMx микрофон (STM32F407VG): 5 қадам

Бейне: STM32CubeMx микрофон (STM32F407VG): 5 қадам
Бейне: STM32F407 DISCOVERY. Микрофон 2024, Қараша
Anonim
STM32CubeMx микрофон (STM32F407VG)
STM32CubeMx микрофон (STM32F407VG)

Сәлем! Бұл жобада біз микрофонды қолдана отырып, дыбысты алуға тырысамыз (сыртқы микрофон емес) және оны динамик арқылы ойнатамыз. Бұл нұсқаулық өте қысқа болады, себебі мен кейбір бейнелерге сілтеме жасай отырып, жобаның бөліктері туралы түсініктеме беремін. Сонымен, жобаға көшейік:)

1 -қадам: Бағдарламалық қамтамасыз ету мен жабдыққа қойылатын талаптар

Аппараттық құралдарға қойылатын талаптар:

  • STM32F4 табу тақтасы (немесе кез келген басқа STM32F4 тақтасы)
  • MAX9814 күшейткіші бар электрлі микрофон
  • PAM8403 дыбыс күшейткіш модулі
  • 4 OHM динамигі

Бағдарламалық қамтамасыз етуге қойылатын талаптар:

  • STM32CubeMX
  • Keil uVision5

2 -қадам: Жобаның жоспарын анықтау

Сонымен, алдымен не істегіміз келетінін түсінейік. Біріншіден, біз электрлі микрофоннан дыбыс алғымыз келеді. Өздеріңіз білетіндей, MCU бәрін сандық түрде өңдейді. Дегенмен, дыбыс аналогтық сигнал болып табылады. Сонымен, біз оны цифрлық сигналға түрлендіруіміз керек, мұны ADC (аналогты -цифрлық түрлендіргіш) жасайды және процесс іріктеу деп аталады. Қосымша ақпарат іздеуге болады. Мұнда бір маңызды мәселе бар: динамиктен дыбысты дұрыс алу үшін, іріктеу жиілігі шығыс аудио жиілігінен кемінде екі есе жоғары болуы керек. Бұл Никвист-Шеннон теоремасы деп аталады.

Оны цифрлық сигналға айналдырғаннан кейін біз оны қалағанымызша өңдей аламыз, содан кейін дыбысты қайта шығара аламыз. Алайда динамикке аналогтық сигнал қажет. Сонымен, бізге бұл цифрлық сигналды аналогтық кері қайтару қажет. Ол үшін біз DAC (цифрлықтан аналогты түрлендіргіш) қолданамыз. Соңында біз бұл дыбысты шығара аламыз:)

3 -қадам: DMA көмегімен ADC және DAC қалай орнатылады және енгізіледі

Мен айтқанымдай, мен бұл процесті бейнеден білдім. Мен бұл видеоның сілтемесін беремін. Сабырлы болыңыз және мұқият тыңдаңыз. Ол барлық процесті жақсы түсіндіреді.

Сілтемелер: 1 -бөлім және 2 -бөлім

*Ескерту: Бұл жолды кодта тексеріп, DMA үздіксіз сұранысын қосыңыз:

hadc1. Init. DMAContinuousRequests = ҚОСУ;

4 -қадам: Динамикке шығу

Спикерге шығу
Спикерге шығу

Барлық әрекеттерді орындағаннан кейін динамикті жоғарыдағы суреттегідей қосу керек. Осыдан кейін телефонда дыбысты ойнатыңыз және дыбысты естімейтін деңгейге дейін төмендетіңіз. Содан кейін телефонды микрофонға жақындатыңыз, сонда сіз динамиктен дыбысты қатты естисіз. Микрофонмен сөйлеспеңіз, себебі динамиктен шығыс бар -жоғын білу қиын болады:)

5 -қадам: Қорытынды

Сонымен, біз жобаның соңына жеттік. Егер сізде қандай да бір сұрақ немесе мәселе болса, тартынбаңыз:)

Ұсынылған: