酔漢
CubeIDEが余計なI2C HALコードを生成する
上記の問題を発見しました。 STM32H7, L1, F0において、CubeIDEのDevice Configuration ToolでI2Cを設定していないにもかかわらず、I2CのHALコードがプロジェクト中に生成され … 続きを読む
続報:CubeIDEで生成したコードが、初期化中にassertionに失敗する
先日見つけたこの問題ですが、その後STMH7だけではなく、おそらくはすべてのプロセッサに共通する問題だとわかりました。 STのコミュニティからは「次のファームウェアで修正する」と返事が来ています。実はV1.6で見つかった … 続きを読む
CubeIDEによるI2C設定にご注意
CubeIDEは複雑なペリフェラルの設定を簡略化できる便利なGUIツールです。一方で、落とし穴もあるので注意が必要です。 昨年発見してCommunityに報告するも、進展がなかったSTM32H7 I2CのNAK異常応答の … 続きを読む
STM32のEXTI割り込みをディセーブル・イネーブルする
STM32のEXTIはGPIOを外部割り込みラインに使える便利な機能ですが、HALの説明が雑で、どうすればイネーブル・ディセーブルできるのかがピンときません。 EXTIを使えばGPIO経由で最大16本のEXTI割り込み線 … 続きを読む
STM32F7のEXTI_HALがHard Faultを起こす
表記のバグを見つけました。 CubeIDE 1.2.1 STM32Cube FW_F7 V1.15.0 Nucleo F746 HAL_EXTI_GetConfigLine()で取り出した設定情報をそのままHAL_EXT … 続きを読む
CubeIDEで生成したSTM32L1アプリケーションからHAL_EXTIを使えない
表記のバグを見つけました。 CubeIDE 1.2.1 STM32Cube FW_L1 V1.9.0 Nucleo L152 タイトル以上でも以下でもありません。Nucleo F091, F446, F722, F746 … 続きを読む
STM32H7のHALはDuplex I2SをDuplexで動かせない
表記のバグを見つけました。 Nucleo H743ZI CubeIDE 1.2.1 STM32Cube FW_H7 v1.6.0 HAL_I2S_Transmit_DMA() とHAL_I2S_Receive_DMA() … 続きを読む
Duplex I2Sの信号を入れ替える
先ほど投稿したように、STM32H7のDuplex I2Sはマスター・スレーブの切り替えによってSDI/SDOの役割が入れ替わるという頭の痛い問題が有ります。この問題はSPIの設定で解決できるのですが、CubeIDEから … 続きを読む
Duplex I2Sの信号方向にご注意
STM32H7のDuplex I2SはSPIペリフェラル1ポートのみでI2Sの送受信が出来ます。このペリフェラルには落とし穴があることを野田さんが指摘しています。 要約すると、STM32H7のDuplex I2Sはマスタ … 続きを読む