STM32CubeIDEが生成したプログラムでHAL_UART_Transmit_DMA()が動作しない
上記の問題を発見しました。STM32 HAL のバグだと思われます。 表記のとおりで、以下の環境で再現を確認しています。 おそらく他の品種(STM32Lxxなど)でも発生すると考えています。 Ubuntu 16.04 L … 続きを読む
上記の問題を発見しました。STM32 HAL のバグだと思われます。 表記のとおりで、以下の環境で再現を確認しています。 おそらく他の品種(STM32Lxxなど)でも発生すると考えています。 Ubuntu 16.04 L … 続きを読む
(2019/Nov/27追記:本エントリの問題は、v1.0.2までのものであり、v1.1.0では解決済みです。執筆時点でアップデートしていなかったのが原因です。コミュニティにもその旨報告済みです) 上記の件の発生条件を突 … 続きを読む
上記の問題を発見しました。 STM32CubeIDE 1.0.2でSTM32L152といったMCUのプロジェクトを生成すると、一部のAPIが過去のAPIと互換性を失った形でプロジェクトが作られます。 具体的には、HALの … 続きを読む
以前このブログで紹介した問題について、手元で確認しました。STMの掲示板で返信があったとおり、手元の試験では問題が解決していました。
以前、Nucleo F446をいじった時に発見した問題です。 問題が発生するのはNAKが帰ってきた時です。このときI2Cエラー割り込みが発生しますが、HALの中で扱いを誤っているらしく割り込みハンドラの中で例外が発生して … 続きを読む
表題の問題があることを突き止めました。 問題が発生するのはNAKが帰ってきた時です。このときI2Cエラー割り込みが発生しますが、HALの中で扱いを誤っているらしく割り込みハンドラの中で例外が発生しています。 CubeMX … 続きを読む
表題の問題を発見しました。 I2Cバスのスペックによれば、受信側は内部に「これ以上受信データを受信できない」場合には、NACKを返すことになっています(3.1.6節)。しかしながら、STM32F7 HALのHAL_I2C … 続きを読む
一月ほど前、CubeMXが生成するシリアルコードにバグがあるのではないか、おそらくはクロック周波数の設定だろう、というエントリを書きました。 この問題に関しては、症状を100%再現する最小規模のプロジェクトと、比較用に問 … 続きを読む
表記の問題にぶち当たっています。 HAL_I2C_Slave_Recevie_ITは、I2Cスレーブ動作を行うHAL APIです。ポーリングではなく割り込みを使い、転送が終わるとHAL_I2C_SlaveRxCpltCa … 続きを読む