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

Bluetooth идэвхжүүлсэн аналог VU тоолуур: 6 алхам
Bluetooth идэвхжүүлсэн аналог VU тоолуур: 6 алхам

Видео: Bluetooth идэвхжүүлсэн аналог VU тоолуур: 6 алхам

Видео: Bluetooth идэвхжүүлсэн аналог VU тоолуур: 6 алхам
Видео: Часы G-Shock до 250 долларов-15 лучших часов Casio G до 250 доллар... 2024, Арваннэгдүгээр
Anonim
Bluetooth идэвхжүүлсэн аналог VU тоолуур
Bluetooth идэвхжүүлсэн аналог VU тоолуур

Энэ бол миний SMP нэртэй их сургуулийн нэг хичээлд зориулсан төсөл байсан. Бид STM32F103RB хөгжлийн самбарыг ашиглаж байхдаа би энгийн VU тоолуураас эхлэн төслөө үүнд үндэслэв. Би дараа нь ADB -ээс үнэ цэнийг Андройд апп руу дамжуулахын тулд Bluetooth дэмжлэг гэх мэт нэмэлт функцуудыг нэмж, энгийн dB диаграм үүсгэв.

Алхам 1: Ашигласан бүрэлдэхүүн хэсгүүд

  • STM32F103RB хөгжлийн самбар
  • HC-05 zs040 bluetooth модуль
  • Аналог VU тоолуурын самбар (холбоос)
  • Цахилгаан микрофон
  • LM324N дөрвөлсөн op-amp
  • 2 TIP120 транзистор
  • 3 1N4148 диод
  • Төрөл бүрийн конденсатор ба резистор

Хэдийгээр та энэ хэлхээг тавцангийн 5В -ийн төмөр замаас хөөж чаддаг ч гэсэн би гаднаас 5V цахилгаан хангамж ашигладаг байсан.

Алхам 2: Дугтуй дагагч

Дугтуй дагагч
Дугтуй дагагч
Дугтуй дагагч
Дугтуй дагагч

Энэхүү дизайны гол хэсэг нь дугтуй дагагч бөгөөд цахилгаан микрофоноос дохио авч, микрофоны дохионы далайцтай пропорциональ хүчдэл гаргадаг.

Микрофоны түүхий дохиог эхлээд 150 -ийн өсөлттэй өсгөгчөөр дамжуулдаг.

Дараа нь дохиог зөвхөн эерэг дохионы хэсгүүдийг гаргах ёстой дугтуйг дагалдагчаар дамжуулдаг.

Сүүлчийн хэсэг нь дугтуй дагагчийн гаралтаас 1.65V-ийн офсет хүчдэлийг хасч, дуу чимээ гаргахгүй 0 В, дунд дууны хувьд 1.65 В, чанга дууны хувьд 3.3 В дохио өгөх бөгөөд энэ нь дотоод төхөөрөмжтэй нийцэж байх ёстой. Удирдах зөвлөлийн ADC.

Энэхүү дугтуй дагагчийг энэхүү гайхалтай StackExchange хариултаас хэрэгжүүлсэн болно.

Алхам 3: Аналог тоолуурын ХОУХШ

Хэмжигчийн зүүг ажиллуулахын тулд би 500 Гц давтамжтай микроконтроллерийн TIM4 таймерыг тохируулсан.

Ажлын янз бүрийн мөчлөгүүдийг дараалан туршиж үзээд би зүүг 0 -ээс 100 хүртэл авахад хангалттай байсан зарим утгыг олж авсан.

Дараагийн алхамд би математик ашиглан тодорхой утгыг харуулах үйл явцыг нарийвчлан тайлбарлах болно.

Алхам 4: Микрофоны шалгалт тохируулга

Микрофоны шалгалт тохируулга
Микрофоны шалгалт тохируулга
Микрофоны шалгалт тохируулга
Микрофоны шалгалт тохируулга

Дугтуй дагагчийг хийсний дараа би ADC -ийг ашиглахын тулд энгийн код бичиж, унших утга нь өрөөний чанга чанарт тохируулан өөрчлөгдөж байгааг баталгаажуулав.

Энэ утгыг бодит дБ -ийн уншилт болгон "орчуулах" тулд би 550 Гц давтамжтай онлайн аялгуу үүсгэгчийг ашиглаж, Андройддоо лавлагааны уншилт өгсөн.

Би эдгээр утгыг гаргаж, MatLAB -ийн Curve Fit хэрэгслийг ашиглан ADC -ийн уншилтыг dB түвшний бодит ойролцоо байдалтай харьцуулах функцийг олж авсан (эсвэл наад зах нь миний утасны уншилттай ойролцоо).

Энэ нь микрофоны логарифмын хуваарийг дагаж байгааг бид харж байна.

Зүү байрлалыг ХБХ -ны утгуудтай харьцуулахын тулд би мөн ижил зүйлийг хийсэн. Би эдгээр утгыг ХОУХШ -ийн утгыг дараалан 10 -аар нэмэгдүүлэх замаар цуглуулах шаардлагатай болсон.

Эдгээр 2 функцийг нэгтгэснээр ADC -ээс уншилтыг хэмжигч заагчийн бодит утга руу харуулах хялбар аргыг олж авлаа.

Алхам 5: Андройд апп

Апп нь энэхүү сэрүүн номын санг ашиглан байтын мэдээлэл солилцохын тулд Bluetooth цувралаар холбогдож байна.

Энэ системийн гол анхааруулга нь Bluetooth -ээр илгээгдэх хамгийн их үгний урт нь 8 бит бөгөөд ADC -ийн утгыг 12 битээр дүрсэлдэг. Энэ асуудлыг даван туулахын тулд би ADC -ийн нэг утгыг 6 тусдаа 6 битийн утгад (MSB ба LSB) хувааж, үлдсэн 2 битийг мессежийн төрлийг (MSB, LSB, CHK) тодорхойлоход ашигладаг.

Тиймээс, бидний цацахыг хүсч буй нэг ADC утгын хувьд бид бодит утгыг 2 мессеж болгон хуваадаг. Эдгээр зурвасын бүрэн бүтэн байдлыг шалгахын тулд би эхний 2 зурвасын XOR -тай гурав дахь зурвасыг илгээсэн.

Утга бүрэн бүтэн байдлыг шалгасны дараа бид ижил функцийг ашиглан dB түвшинг олж аваад шууд диаграм дээрээ байрлуулж болно.

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

Би энэ төслийн микро хянагчийн хэсэг нь өрөөн доторх дуу чимээг сайн харуулдаг боловч пакет алдагдсаны улмаас Bluetooth-ээр өгөгдөл илгээхэд зарим асуудал тулгарсан.

Энэ төслийн эх кодыг эндээс олж болно.

  • Android хамтрагч апп - репо
  • Микроконтроллер код - репо

Хэрэв танд энэ нь ямар нэгэн байдлаар ашигтай санагдвал хувь нэмрээ оруулаарай.

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