------------------------------------------------------------------------
定番STM32で始めるIoT実験教室
第4部 本格リアルタイム信号処理の実際：音声ビーム・フォーミングの実験

CQ出版株式会社　トランジスタ技術編集部
------------------------------------------------------------------------
筆者のご厚意により，記事執筆時に筆者が作成したプログラムのファイルを収録
しました．
＜作成時の各ツールのバージョン＞
　STM32CubeIDE：　　1.1.0
　STM32CubeMX： 　　5.4.0
　X-CUBE-MEMSMIC1： 3.0.0

※STM32CubeIDEのバージョンが同一であれば，STM32CubeIDEのワークスペースと
　なるフォルダにプロジェクト・ファイルをコピーして，STM32CubeIDEの起動時
　にワークスペースを指定することでプロジェクトを使用可能です．
　バージョンが異なると，うまく動作しない場合があります．

※STM32CubeIDEおよびSTM32CubeMXについては，旧バージョンのソフトウェアも
　下記のWebサイトからダウンロードできます．
　https://www.st.com/ja/development-tools/stm32cubeide.html
　https://www.st.com/ja/development-tools/stm32cubemx.html

　X-CUBE-MEMSMIC1の旧バージョンのソフトウェアについては，下記のWebサイト
　からダウンロードできます（2021年9月1日現在）．
　https://www.stmcu.jp/design/sw_dev/firmware/60194/#601947_en

【ファイル・フォルダ】
README.txt　 ：このファイル

ARM-First-DSP：記事中の信号処理を担うプログラム
　STM32CubeIDEで直接読み込むことができるプロジェクト・ファイルと
　ソース・コード

■「X-CUBE-MEMSMIC1」について
STマイクロエレクトロニクス社より提供されている，音源位置の角度推定とビー
ム・フォーミングのソフトウェア・パッケージです．
使用には，SOFTWARE LICENSE AGREEMENTを参照ください．
https://www.stmcu.jp/design/document/other-document/57520/

ARM-First-DSPプロジェクトでは，X-CUBE-MEMSMIC1のバージョン3.0.0を使用し
て動作確認をしています。
2021年9月現在の最新バージョン5.5.0では，ライブラリのファイル名やフォルダ
名が異なっているため，動作しません．記事を再現する際にはバージョン3.0.0
を使用してください．

■「音源位置の角度推定」と「ビームフォーミング」の同時動作について
ARM-First-DSPソフトウェアでは，音源位置の角度推定とビームフォーミングは
同時に動作ができるよう考慮されています．
ただし処理負荷の都合により，ビームフォーミングのアルゴリズム「Strong」を
選択した際は同時動作を行うことができません．
同時動作を行う場合にはその他のアルゴリズムを選択ください．

■ジャンパピンJP6とJP7
ARM-First-DSPソフトウェアでは、JP6とJP7はショートプラグを差し込んだ状態
で使用します。

■「STM32CubeMX」にてARM-First-DSPプロジェクトのソース・コードを更新した
際の注意点
STM32CubeMXにてARM-First-DSPプロジェクトのソース・コードを更新した場合に
は，main.cのmain関数内でコールされるMX_USB_OTG_FS_PCD_Init()をコメントア
ウトしてください．

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_DMA_Init();
  MX_CRC_Init();
  MX_I2C1_Init();
  MX_I2S2_Init();
  MX_I2S3_Init();
//  MX_USB_OTG_FS_PCD_Init(); ←要コメントアウト

======
著作権
　収録したプログラム，データおよびドキュメントなどの著作権は，各著作権者
(すなわち筆者)にあります．
　Copyright (C) 2020 Hikaru Takanashi

======
免責
(1)プログラムやデータの使用により，使用者に損失が生じたとしても，著作権
者とＣＱ出版(株)は，その責任を負いません．

(2)プログラムやデータにバグや欠陥があったとしても，著作権者とＣＱ出版
(株)は，修正や改良の義務を負いません．
