MEMS マイクロフォンを使って、スピーカから流れる音を直接拾い、モールスを解読してみました。
スピーカからダイレクトで音を拾って解読する
これまでのオーディオケーブルを使う方法に追加して、MEMS マイクロフォン(AI スピーカなどで使われてるやつ)で音を直接拾って解読できるようにしました。
@約300円・・・毎度の AliExpress なんで、バッタもんかもしれません。
ADMP401 の MEMS マイクボードの端子は3本だけです。
このボードは 3.3V 仕様なので、M5Stack 側もこれに合わせて 3.3V の端子へ接続します。
マイク出力の AUD 端子はアナログ信号なので、M5Stack 側もアナログ端子(35ピン)に接続して、A/Dコンバータの値としてプログラムで読み込みます。
マイク出力のアナログ値は analogRead()
関数を使って読みます。
Learning Morse を使ってパソコンから数字(1~0)の連続を流し解読させてみましたが、前回の投稿からまったくプログラムを弄ってないので、20 wpm を超えたあたりから誤字が多くて、芳しくない結果となりました。
Arduino Nano では 30 wpm でもちゃんと解読してくれたんですが・・・
M5Stack は Arduino と比較にならないほどの高性能なはずなんですが、LCD やスイッチとか全部入りだったりするので、なにかファームウェアの処理で重いところでもあるのでしょうか。
まぁ、いろいろやってみたいと思います。