問題タブ [stm32f7]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
debugging - STM32 - Data Watchpoint and Trace (DWT) を使用する危険性
STM32F7 で Data Watchpoint and Trace (DWT) を初期化するために必要なコードを見ると、次のようになります。
特に、DWT レジスタへのアクセスをロック解除する次の行:
これは、トリガーを引く前に安全キャッチを切り替えることに似ています。危険な行動にアクセスするようなものです。
同時に、ドキュメントを調べても、DWT を使用することのマイナス面は見つかりませんでした。そう
ここで 0xC5ACCE55 の明示的なセットが必要なのはなぜですか (他のサブシステムとは異なります)。欠点はありますか?危険?または、この安全キャッチが本当に必要なものはありますか?
PS私はDWT->CYCCNT
パフォーマンスプロファイリングのためにアクセスするためにDWTを使用しています。
c - ST Micro HAL、stm32f7xx_hal_crc.c 解決方法 [警告] 型がパニングされたポインターを逆参照すると、厳密なエイリアス規則が破られる
STM32Cube_FW_F7_V1.3.0 で、まだ STM32Cube_FW_F7_V1.11.0 で
-Os または -O2 を使用して stm32f7 HAL ライブラリをコンパイルすると、次の警告が表示されます。
注: -O1 は、警告なしでコンパイルします。
警告は正当化されます。コードは正しく動作しているように見えます。ただし、警告はエラーとして扱いたいと思います。
質問: crc モジュールを壊さずに警告を削除するようにコードを変更するにはどうすればよいですか?
注: オンラインのどこにも解決策が見つかりませんでした。
これは、警告の原因となる行の 1 つです。
ハードウェアのcrcレジスタを扱っているため、これを変更するのは少しトリッキーで威圧的だと思います。
これは ST Micro のライセンスであり、ソース コードを配布するときに含める必要があると述べていますが、質問には関係ありません。
関連コード:
警告は、16 ビット CRC 関数にも表示されます。