0 まえがき
STM32 を長年使っていなかったので、プロジェクトを再度取り上げる必要があり、今回は HAL ライブラリ + STM32CubeIDE を使用して開発してみます。
.MCU
: STM32F407ZGT6
エミュレータ : ST Link V2
開発環境 : STM32CubeIDE 1.10.1
1. 構成
1.1. 初期設定
ソフトウェアを開き、新しいプロジェクトを作成し、チップを選択し、
プロジェクトのパスを選択し、
ピンの設定を開始します。最初は SW ダウンロード ピンです。
1.2. 端子配置
[ピン配置] ビュー ページで、使用するピンを設定します。ここで出力を選択します
PF9 を右クリックし、ユーザー ラベルの入力を選択します—「入力名 (次のステップで変更することもできます) を使用して
このインターフェイスを見つけ、
GPIO 出力レベルを構成します—「高レベル/低レベル
GPIO モード—」プッシュプル/オープンドレイン
GPIOプルアップ/プルダウン——「プルアップ/プルダウン/なし
最大出力速度——」低速/中速/高速/超高速
ユーザーラベル——"カスタムラベル(前のステップも変更できます)
1.3、クロック構成
システム クロック構成ページで、HCLK を最高周波数として構成し、Enter キーを押して確認します。右側の値が自動的に変更され、最高周波数がチップごとに異なることがわかります。
1.4. ペリフェラルの初期化
プロジェクト管理ページで、「ペリフェラルの初期化を生成する...」にチェックを入れます。
1.5、デバッガ構成
[実行構成] を開き
、[デバッガー] - [ST_LINK GDB サーバー] - [SWD] - [適用] をクリックします。ST
LINK ドライバーを更新する必要がある場合は、更新してみてください。失敗する場合は、セクション 3.1 を参照してください。
2. コード
2.1、コードを生成する
上記の設定が完了したら、歯車アイコンをクリックしてコードを生成し、ポップアップ ダイアログで [はい] を選択すると、
ファイル ディレクトリに main.c などの一連のコードが生成されていることがわかります。
main.h では、LED ピンがマクロ定義されていることがわかります
。gpio.c では、ピンが初期化され、構成されています。
ここでは、構成が更新されると、これらのコードも更新されることに注意してください。同時に、特定の範囲にないコードはクリアされます。セクション 2.2 を参照してください。
2.2、コードを追加
main.c 内に次のコードを追加します。コメント ステートメントは保持する必要があります。
/* USER CODE END WHILE */
HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin,GPIO_PIN_RESET);
HAL_Delay(500);
HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin,GPIO_PIN_SET);
HAL_Delay(500);
/* USER CODE BEGIN 3 */
2.3、コードをコンパイルする
このアイコンをクリックしてコンパイルします。
コンパイルが成功し、エラーがなければ、リソースの使用状況が表示されます (Vivado と同様です)。
3. ダウンロード
3.1. ST Linkドライバーのアップデート
ここで、ST Link のアップデートが必要な STM32CubeIDE に遭遇しました。接続されている ST-LINK をこのバージョンに接続するには、「接続された ST-LINK をこのバージョン
の STM32CubeIDE で使用するには、ST LINK ファームウェアのアップデートが必要です」というポップアップが表示されます。
STM32CubeIDE を使用するには、ST-LINK ファームウェアをアップデートする必要があります
ただし、Cube の更新が失敗し、何度試しても失敗した場合は、STM32 ST_LINK ユーティリティ ソフトウェア アップデートをダウンロードしてドライバーの最新バージョンにインストールすると、Cube は更新が必要であることを示すプロンプトを表示しなくなり、自動チェックをキャンセルします。アップデート用に。
PS: ST リンクを更新するときは、ST リンクを STM32 から切断する必要があります。
ST リンクに接続すると、チップの内部ドライバーのバージョンが表示されます。必要に応じて [はい] をクリックして更新します。途中でエラーが発生した場合は ST リンクを削除し、再試行して、最後にチップの内部ドライバーを読み取ります。チップが更新されたドライバーのバージョンと一致している場合、更新は成功したとみなされます。
3.2. プログラミングプログラム
コードがコンパイルされたら、下のアイコンをクリックしてプログラムをダウンロードします
。最初のダウンロードではダイアログ ボックスが表示されますが、デフォルトで問題ありません。
プログラミングが完了し、開発ボードが正しく動作します。
4. デバッグ
4.1、デバッグに入る
「デバッグ」アイコンの横にある小さな三角形をクリックしてデバッグ構成に入り、正しいプロジェクト・ファイルを選択して「適用」をクリックし、デバッグ・モードに入ります。
または、「デバッグ」アイコンをクリックします。
デバッグモードに入った後、「デバッグ終了」アイコンをクリックするか、Ctrl+F2 を押して終了するだけでなく、
右上隅のアイコンを使用してモードを切り替えることもできます。
4.2、デバッグモード
デバッグインターフェースの右側には、一般的な「変数変数」、「ブレークポイントブレークポイント」、「式式」、「レジスタレジスタ」などが表示されます。 プログラムの左側では、ダブルクリックしてブレークポイントを生成し
ます