STM32CubeMXを使用して、STM32F103マイクロコントローラー用の空のプロジェクトを作成しています。 HALドライバー(デフォルト)を使用すると、まばたきの例がすぐに機能しますが、HALではなくLL(低レベル)ドライバーを試してみたいと思います。
CubeMXで[プロジェクト]> [設定]> [詳細設定]に移動すると、周辺機器が一覧表示され、それぞれの隣にプルダウンがあり、オプションはHALのみです。ドキュメントによると、ここで各ペリフェラルにLLまたはHALを選択できます。
STM32CubeMXでLLドライバーを有効にするにはどうすればよいですか?
詳細:Ubuntu(16.04)にSTM32CubeMX(4.23.0)をクリーンインストールし、STM32F103C8マイクロコントローラー用の新しいプロジェクトを作成しました(これは「Blue Pill」ボードにあります)。私はSW4STM32 IDEを使用していますが、構成ファイルでV2.1ではなくSTLink V2を選択する必要があったことを除いて、ほぼすべてがそのまま機能しました。
現在(STM32CubeMX v4.23.0)LLドライバーは、L1、L4、F2、F4、F7シリーズに対してのみ生成されます。低層ドライバーを使用した6.2 STM32Cubeコード生成の章を参照してください。STM32L1、STM32L4、STM32L4 +、STM32F2、STM32F4、およびSTM32F7シリーズの場合、STM32CubeMXでは、周辺HALドライバーまたは周辺低レイヤー(LL)ドライバーに基づいて周辺初期化コードを生成できます。
ドライバーセレクターの詳細設定の下にあるプロジェクトマネージャーから、すべての周辺機器のHALをLLに変更できます