STM32F411 BlackPill録音機

・Adafruitのオリジナルボードは高価だが、Amazonのは1/10で入手可能、ただしRTC用の発振コンデンサーは間違った定数が付いているので、10~15pFに交換する必要が有る。
・屋外に放置する為、部品費は5,000円以内になる様に設計目標を定めた。
・プログラム言語はSTM32duino上で、コンデンサーマイク用プリアンプMAX9814をマイコン内臓12bitA/Dで8KHzモノラルWAV形式のFATを、SPI経由で外付けSDメモリー記録する方式にした。A/D分解能を上げる為Vrefは、電池の2段目(2.4V)に接続している。
・Amazonで販売しているMAX9814基板に付いているφ10コンデンサマイクは幾つか種類がある様で、高感度品の-75dBにはSGの刻印がある物を使用した。
・SDメモリー書き込み時に100mmA スタンバイモード5mmAなので、動作時間を単3NiMH3本で40h以上を設計目標にした為、無音時にはスタンバイモードで動作時間を稼ぐ必要があり、マイクアンプの出力に風切り音防止用HIパスフィールターとコンパレータを構成して、PA4ポートで割込みで解除し、無音状態が60秒継続するとCPU停止する様にした。
・PB0に接続してあるDIPSwがLoで、COMM2(PA9:RxD PA10:TxD PA11:GND)38400bps録音制御やRTCの調整を行う。自動録音モードに入れるには、電源投入時Hiにする事。
・消費電流節約の為、PWR LEDの抵抗は外した。
・電池ホルダーは、ダイソーの100円LED照明を流用したが、電源SWが接触不良を起こすので、交換した。

[ダウンロードが見つかりません]

[ダウンロードが見つかりません]

録音開始時の割込み解除レベル

Hipassフィルター(風切り音)の周波数特性

・RTCの発振コンデンサーの調整は、添付ソースファイルの1593ラインのコメントを外すと、PC13ポートに512Hzが出力できるので、周波数カウンター等で容量を調整する。録音機を4台作成したが、2年間使って、2~30秒ずれた。3号機は水晶振動子が故障したので、手持ちの物に交換したら5分の進みとなった。

BlackPillの書き込みやデバックは、NUCLEOボードを写真の様に接続して、VisulaStudioCode+PlatformIOで行った。

・録音停止時にFAT形式にファイナライズを行う為、作成日時が停止時間になってしまうのと、録音開始割込みがAGCが最大感度としている為、簡単に録音開始となってしまう。
4台ある全ての録音結果を確認するのは大変なので、FFT解析を行い記録されている音量が-48dB以下の場合DASTフォルダーに移動して、作成日時を録音開始時刻に変更するWAVCheker.netアプリを作成した。
・録音結果を確認するのは時間が掛かるので、SonicVisualiserAudacityを使用して、スペクトルをスクロールしながら探すもが早い、下はSonicVisualiserでシジュウカラ、ウグイス、ハシブトカラス、エナガのFFTサンプル。

タイトルとURLをコピーしました