マイクをつなぐ

アナログ入力

マイクにつなかっている2.2kΩの抵抗はマイクの電源と負荷抵抗になります。
こうすると勝手な電圧を中心に変化するので1μFのコンデンサで直流分をカットします。
このコンデンサの他端が電源電圧の1/2の電圧の周りで変化するように100kΩを二つ付け電源電圧の1/2の電圧にします。
これを100倍の電圧に増幅するためにLM358のオペアンプを用いています。
そのために、+入力は入力の平均電圧にしないといけないので、470Ωで分圧し、これを3番ピンに入れます。
ちょっと電流が流れすぎるので、10kΩあたりでも良いかと思います。


下のプログラムは、A/Dで入力したデータをそのままD/Aに出力してスピーカーでチェックするプログラムです。

アナログ入力
#include "mbed.h"

AnalogIn mic(p20);
AnalogOut daval(p18);    // 10bit
Serial pc(USBTX, USBRX); // tx, rx
int main()
{
  pc.baud(115200);
  unsigned short output;
  pc.printf("***************************\n");
  while(true)
  {
    output=mic.read_u16();;
    daval.write_u16(output);
  }
}
 1 
 2 
 3 アナログ入力
 4 アナログ出力
 5 
 6 
 7 
 8 
 9 
10 
11 
12 
13 
14 
15 
16