私は最近、次のワークフローを使用して、STM32 の開発に PlatformIO を使用するように切り替えました。
- CubeMX ユーティリティを使用して .ioc ファイルを作成する
stm32pio
コマンド ライン ユーティリティを使用して、その .ioc ファイルからソース コードと PlatformIO 構成を生成します。- VSCode 用の PlatformIO プラグインを使用した編集、ビルド、およびデバッグ (Mac)
全体として、これは非常にうまく機能します。ただし、以前はSTのCubeMX IDEでCubeMXコード生成を使用していました.sファイルをソースディレクトリに配置し、(私が理解しているように)NVICを定義し、例外/割り込みに使用されるデフォルト関数を定義しました。明示的に定義されていません (つまり、デフォルトの弱い実装によって処理されるものです)。これが新しいワークフローのどこで定義されているかわかりません。これはビルド プロセスの一部として動的に生成されますか?
私が尋ねている理由は、(プロセス全体をよりよく理解したいという以外に)、EXTI0 の割り込みハンドラーを書きたいのですが、それをソフトウェア割り込みとしてトリガーし、それにピンを割り当てないようにしたいからです。それが不可能な場合、おそらく要点全体が議論の余地があります。