部品屋根性(47) SiSonic SPM0405HD4H、MEMSマイクロフォン

Joseph Halfmoon

マイクロフォンと言えば、空気の波である音波を電気信号へと変換するアナログ素子であります。しかし、今時のMEMSマイクロフォンは小さなパッケージの中で音波からアナログ電気信号へ変換するだけでなく、それをデジタル化して出力してくれます。デジタル化により電気的な取り扱いは楽になりますが、信号処理は必須。

※「部品屋根性」投稿順Indexはこちら

今回、購入させていただいたMEMSマイクロフォンは、SPM0405HD4Hという型番の製品です。以下にURLを貼り付けさせていただいたノウルス社の製品。

Knowles

ノウルス社は、いろいろ紆余曲折あるようですが老舗です。昭和でいったら21年創業。歴史を拝見すると、かの月面着陸の際にアームストロング船長のお言葉を拾ったマイクはこの会社の製品であったようです(私は実時間?で聞いたです。)勿論、その当時はMEMSではなかった筈。しかし、時は流れMEMSマイク主流の時代をもリードしておる、と。見上げたものであります。

さて、ノウルス社はMEMSマイクに関してはSiSonicというブランド名を使っていらっしゃるようです。MEMSマイクの原理や構造について私が説明するのは恐れ多いので、興味のある方は以下にURLを貼り付けましたノウルス社のアプリケーションノートをご覧くださいませ。

SiSonic Design Guide

さて、上のデザインガイドを拝見すると、購入させていただいた

SPM0405HD4H

というSPMなる型番の製品は、ラインナップの中では「カイデー」な製品であることが分かります。多分0405という番号は、実寸 3.76mm x 4.72mm (x 1.25mm)を反映しているのでしょう。SPMから小さくなるにしたがって、SPK, SPG, SPU, SPQ, SPH, SPA, SPQ, SPY, SPVと、これまあ多種の製品展開がなされており、最小サイズのパッケージになると 2.75 x 1.85 x 0.90 mmです。携帯製品への応用によるマイクロフォンの小型化要求、部品屋への進化の淘汰圧がかかった一例でしょう。今回購入の「一番大きい」パッケージでも十分小さい表面実装部品です。とても私メには実装できません。そこで、例によって秋月電子殿のDIP化モジュールを購入させていただきました。型番は AE-SPM0405HD4H です。これならピンヘッダを半田付けするだけでブレッドボードに刺すことができます。

PDM波形を確認

上記の秋月殿のモジュール付属のペラ紙データシートでは、「音声データディジタル出力」は「1/2サイクルPCMフォーマット」と呼ばれていました。変調方式で言えば、Pulse Density Modulation(PDM)、パルス密度変調というべき方式でしょう。

クロック信号に同期して音に「応じた」0/1がずらずら出力されるのですが、通常のシリアル信号みたいにここがフレームの開始、といったキッカケがあるわけではないようです。内部にΣΔ型のDAが入っていて、音圧に応じて1が多くなったり、0が多くなったりするので、このビット列を処理して音波らしい波形を取り出す操作が必須です。

とりあえず今回は、どんな波形が出てくるのか「生の信号」を観察してみました。デバイスの端子数は8端子なのですが、GNDが4端子、VDDが1端子あるので、信号線的には3端子の素子です。CLKにクロック信号(1から3.25MHz)を与えると、DAT端子にPDM信号が現れます。そのときL/R入力端子に与える電位がHighかLowかによって、クロックの立上りからDATにデータが出力されるか立下りからの出力されるかが制御できます。つまり2個のマイクがあれば、それぞれ異なる設定にすることで、クロックの両エッジ使って1組のデータ線上でL(左)とR(右)のステレオ信号が通せるようになっています。当然2つのマイクの出力がデータ線上でバッティングしないように、自分のターンでない側のマイクのDAT端子はHiZになるようです。

今回はモノラル構成で実験しています。例によってDigilent Analog Discovery2を使って、VDDに3.3V(マイコンなどと接続するときに接続しやすいので。モバイル系なら1.8Vですかね)、CLKに1MHz, Duty50%を与えてDAT端子を観察してみました。なお、DAT端子はHiZになる期間があるので、外付けで10kΩのプルダウン抵抗をつけてみました。また、L/R端子に与える電圧はVDD/GNDをジャンパで切り替えられるようにしています。

MEMS_MIC_DUT

L/R端子にVDD接続したときの波形

黄色がDAT端子、青がCLK端子です。CLKの立ち上がりに同期してDAT端子が駆動されているのが分かります。こうして近よって見てしまうと、ランダムに0、1が出力されている感じで、どんな音だか想像もつきません。黄色の波形がHighのときの立下り側が削れているのは、外付けしたプルダウン抵抗がHiZになっている期間(ほぼCLKがLowの期間)の間ロウに引き下げているためです。抵抗外してステレオ接続すれば、もう一つのMEMSマイクがその期間を駆動するはず。

mems_mic_waveform_1M_VDD

L/R端子にGND接続したときの波形

期待通り、DATがCLKの立下りに同期する波形になっています。
mems_mic_waveform_1M_GND

復調方法

今回、いくつかの「復調方法」を確かめてみたい(別投稿で)と考えております。候補は以下のようです。

    1. デジタルな信号なのだけれどLPFを通して直接アナログ化
    2. PDM信号をI2Sバスにインタフェースするためのデバイスを通す
    3. 直接PDM信号にインタフェースとれるマイコンを使用
    4. 無理やり0/1の数列に直して記憶、後でPC上のソフトで操作してみる

どこまでやってみれるかね。また今度。

部品屋根性(46) 東芝ワンゲートロジックでレベルシフト へ戻る

部品屋根性(48) ATmega328P、ブートローダ書込済、ラベル付 へ進む