Агуулгын хүснэгт:

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 (аналоги тоон хөрвүүлэгч) хийдэг бөгөөд процессыг түүвэрлэлт гэж нэрлэдэг. Та дэлгэрэнгүй мэдээлэл хайж болно. Энд нэг чухал зүйл байна: Илтгэгчээс зохих ёсоор дуу авиа авахын тулд дээж авах давтамж нь гаралтын аудио давтамжаас дор хаяж хоёр дахин их байх ёстой. Үүнийг Nyquist-Shannon теорем гэж нэрлэдэг.

Үүнийг тоон дохио болгон хөрвүүлсний дараа бид үүнийг хүссэнээрээ боловсруулж, дараа нь энэ дууг дахин гаргаж чадна. Гэсэн хэдий ч чанга яригчид аналог дохио хэрэгтэй болно. Тиймээс бид энэ дижитал дохиог аналог руу буцаах хэрэгтэй. Үүний тулд бид DAC (тооноос аналог хөрвүүлэгч) ашиглах болно. Эцэст нь бид энэ дууг гаргаж чадна:)

Алхам 3: DMA ашиглан ADC ба DAC -ийг хэрхэн тохируулах, хэрэгжүүлэх талаар

Миний хэлсэнчлэн би энэ үйл явцыг видео бичлэгээс олж мэдсэн. Би энэ видеоны линкийг өгөх болно. Тэвчээртэй байж, анхааралтай сонсоорой. Тэр бүх үйл явцыг төгс тайлбарлаж өгдөг.

Холбоосууд: 1 -р хэсэг ба 2 -р хэсэг

*Тэмдэглэл: Энэ мөрийг код дээрээ шалгаад DMA тасралтгүй хүсэлтийг идэвхжүүлнэ үү.

hadc1. Init. DMAContinuousRequests = ИДЭВХЖҮҮЛЭХ;

Алхам 4: Илтгэгч рүү гарна

Илтгэгч рүү гарлаа
Илтгэгч рүү гарлаа

Бүх алхамуудыг хийсний дараа чанга яригчийг дээрх зураг шиг холбох хэрэгтэй. Үүний дараа утсан дээрээ дуу тоглуулж, бараг сонсдоггүй хэмжээнд хүртэл дууг нь багасгаарай. Дараа нь утсаа микрофоны ойролцоо аваарай, та чанга яригчийн дууг чанга сонсох болно. Микрофонтой бүү ярь, учир нь чанга яригчаас гаралт байгаа эсэхийг ойлгоход хэцүү байх болно:)

Алхам 5: Дүгнэлт

Тиймээс бид төслийн төгсгөлд хүрлээ. Хэрэв танд асуулт, асуудал байвал асуухаас бүү эргэлзээрэй:)

Зөвлөмж болгож буй: