Windows10 のプロジェクト作成方法 2017/06/23...

60
1 Windows10における Ac6 System Workbench for STM32のプロジェクト作成方法 V002 2017/06/23 Windows10の PCで Ac6 System Workbench for STM32のプロジェクトを新規に作成する方法について説明します。 tri-S CPU 基板用の LED 点滅プログラムの作成を例に説明します。 目次 1. 新規プロジェクト作成の準備......................................................................................................................................................................................... 3 2. 新規プロジェクトの作成.................................................................................................................................................................................................... 5 2.1. SystemWorkbench for STM32 の起動................................................................................................................................................................ 5 2.2. Workspace の選択...................................................................................................................................................................................................... 5 2.3. 新規プロジェクトの作成........................................................................................................................................................................................ 8 2.4. プロジェクト名の設定 .............................................................................................................................................................................................. 9 2.5. マイクロコントローラと基板 および デバッガの選択 .......................................................................................................................10 2.6. Library 使用の選択...............................................................................................................................................................................................13 2.7. プロジェクトの初期画面.....................................................................................................................................................................................16 3. ソースの編集 ........................................................................................................................................................................................................................17 3.1. ソースファイルを開く............................................................................................................................................................................................17 3.2. ソース・フォルダの追加......................................................................................................................................................................................18 3.3. ファイルの追加 ........................................................................................................................................................................................................21 1) 新規ソースファイルの追加.................................................................................................................................................................................21 2) 新規ヘッダファイルの追加................................................................................................................................................................................24 3.4. 既存のソースフォルダとファイルの追加...................................................................................................................................................27 1) ソースフォルダとファイルの追加.....................................................................................................................................................................27 2) ソースフォルダの認識 ...........................................................................................................................................................................................30 4. パスの設定............................................................................................................................................................................................................................32 1) パスの設定画面を開く ...............................................................................................................................................................................................32 2) パスの追加.......................................................................................................................................................................................................................35 a) Configuration の選択................................................................................................................................................................................................35 b) パスの追加..................................................................................................................................................................................................................35 5. startup ファイルの変更......................................................................................................................................................................................................39 6. 不要なファイルの削除....................................................................................................................................................................................................42 1) 不要なヘッダファイルの削除.................................................................................................................................................................................42 2) User Manual の削除.......................................................................................................................................................................................................43 3) stm32f4xx_hal_msp_template.c の削除 ...................................................................................................................................................................44 7. プログラムの開始番地を0x08010000 に設定する方法..................................................................................................................................45 7.1. LinkerScript.ld 内の ROM(rx) の値の変更 ...................................................................................................................................................45 7.2. ファイル stm32f405xx.h 内の定義の変更 ...................................................................................................................................................46 7.3. Vector table の設定..................................................................................................................................................................................................47 7.4. りばいぶ のサンプルプログラムの番地割り当てについて...........................................................................................................47 8. プロジェクトのビルド.........................................................................................................................................................................................................48 8.1. 内容を変更したファイルの保存....................................................................................................................................................................48 8.2. ビルド ............................................................................................................................................................................................................................49

Transcript of Windows10 のプロジェクト作成方法 2017/06/23...

Page 1: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

1

Windows10におけるAc6 System Workbench for STM32のプロジェクト作成方法 V002 2017/06/23

Windows10のPCでAc6 System Workbench for STM32のプロジェクトを新規に作成する方法について説明します。

tri-S CPU基板用のLED点滅プログラムの作成を例に説明します。

目次

1. 新規プロジェクト作成の準備 .........................................................................................................................................................................................3

2. 新規プロジェクトの作成 ....................................................................................................................................................................................................5

2.1. System Workbench for STM32の起動 ................................................................................................................................................................5

2.2. Workspaceの選択 ......................................................................................................................................................................................................5

2.3. 新規プロジェクトの作成 ........................................................................................................................................................................................8

2.4. プロジェクト名の設定..............................................................................................................................................................................................9

2.5. マイクロコントローラと基板 および デバッガの選択....................................................................................................................... 10

2.6. Library使用の選択 ............................................................................................................................................................................................... 13

2.7. プロジェクトの初期画面 ..................................................................................................................................................................................... 16

3. ソースの編集........................................................................................................................................................................................................................ 17

3.1. ソースファイルを開く ............................................................................................................................................................................................ 17

3.2. ソース・フォルダの追加 ...................................................................................................................................................................................... 18

3.3. ファイルの追加........................................................................................................................................................................................................ 21

1) 新規ソースファイルの追加 ................................................................................................................................................................................. 21

2) 新規ヘッダファイルの追加 ................................................................................................................................................................................ 24

3.4. 既存のソースフォルダとファイルの追加 ................................................................................................................................................... 27

1) ソースフォルダとファイルの追加 ..................................................................................................................................................................... 27

2) ソースフォルダの認識........................................................................................................................................................................................... 30

4. パスの設定 ............................................................................................................................................................................................................................ 32

1) パスの設定画面を開く ............................................................................................................................................................................................... 32

2) パスの追加 ....................................................................................................................................................................................................................... 35

a) Configurationの選択 ................................................................................................................................................................................................ 35

b) パスの追加 .................................................................................................................................................................................................................. 35

5. startupファイルの変更 ...................................................................................................................................................................................................... 39

6. 不要なファイルの削除 .................................................................................................................................................................................................... 42

1) 不要なヘッダファイルの削除 ................................................................................................................................................................................. 42

2) User Manualの削除 ....................................................................................................................................................................................................... 43

3) stm32f4xx_hal_msp_template.cの削除................................................................................................................................................................... 44

7. プログラムの開始番地を0x08010000に設定する方法 .................................................................................................................................. 45

7.1. LinkerScript.ld内のROM(rx)の値の変更................................................................................................................................................... 45

7.2. ファイル stm32f405xx.h内の定義の変更................................................................................................................................................... 46

7.3. Vector tableの設定 .................................................................................................................................................................................................. 47

7.4. りばいぶ のサンプルプログラムの番地割り当てについて ........................................................................................................... 47

8. プロジェクトのビルド ......................................................................................................................................................................................................... 48

8.1. 内容を変更したファイルの保存 .................................................................................................................................................................... 48

8.2. ビルド ............................................................................................................................................................................................................................ 49

Page 2: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

2

9. デバッグ .................................................................................................................................................................................................................................. 51

9.1. デバッグの準備 ...................................................................................................................................................................................................... 51

1) ST-Link/V2 と tri-S CPU基板との接続の様子 ....................................................................................................................................... 51

2) ST-Link/V2 と tri-S CPU基板との接続信号 ............................................................................................................................................ 51

9.2. デバッグ ...................................................................................................................................................................................................................... 52

1) プログラムの実行 ..................................................................................................................................................................................................... 54

2) プログラム実行の中断 .......................................................................................................................................................................................... 54

3) ブレークポイントの設定 ........................................................................................................................................................................................ 56

4) ブレークポイントの解除 ........................................................................................................................................................................................ 57

10. Ac6 System Workbenchの終了 .................................................................................................................................................................................. 58

1) 実行の中断とデバッグの終了 ............................................................................................................................................................................... 58

2) エディット画面に戻る .................................................................................................................................................................................................. 58

3) Ac6 System Workbenchの終了 ................................................................................................................................................................................. 59

Page 3: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

3

1. 新規プロジェクト作成の準備

tri-S CPU基板のLED点滅プログラムを例に説明します。

新規プロジェクトのためのフォルダを作成して、そこにプロジェクトを作成します。

そのフォルダがWorkspaceになります。

[新しいフォルダー] のアイコンをクリックすると、次のように新しいフォルダーが作成されます。

フォルダーの名前を入力します。この例では SfStS_Blink_LED_Status_10K とします。

入力した結果は次ページのようになります。

Page 4: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

4

フォルダ名を入力して、Enterキーを押すか、適当な場所でマウスの左クリックをすると確定します。

この SfStS_Blink_LED_Status_10K がプロジェクトのWorkspaceになります。

Page 5: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

5

2. 新規プロジェクトの作成

2.1. System Workbench for STM32の起動

スタートメニューの {System Workbench for STM32} をクリックすると次のWorkspace選択のダイアログが開きます。

2.2. Workspaceの選択

[Browse...] ボタンをクリックして次の Select Workspace Directory ダイアログを開きます。

Page 6: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

6

先ほど作成したフォルダー SfStS_Blink_LED_Status_10K を選択して [OK] ボタンをクリックすると、次のようになります。

[OK] ボタンをクリックすると次ページのフォームが表示されます。

Page 7: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

7

フォームを最大化し、Welcomeは最小化して、次のようにします。

次ページに続く

Page 8: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

8

2.3. 新規プロジェクトの作成

メニューの {File} – {New} – {C Project} をクリックすると次のダイアログが開きます。

次ページに続く

Page 9: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

9

2.4. プロジェクト名の設定

Use default locationにチェックがついていてLocationは選択したWorkspaceになっています。

Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next >] ボタンを

クリックすると次のダイアログが開きます。

[Next >] ボタンをクリックすると次ページの表示になります。

Page 10: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

10

2.5. マイクロコントローラと基板 および デバッガの選択

使用するMCUと基板を選択します。基板はcustom boardsになります。

Show custom boards以外のチェックをはずします。SeriesはSTM32F4を選択します。

最初はcustom boardsがないので[Create a new custom board] ボタンをクリックして作成します。

[Create a new custom board] ボタンをクリックすると次ページのダイアログが開きます。

Page 11: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

11

次のように項目を選択します。

Enter new board nameにはF405を入力しました。[OK] ボタンをクリックすると F405という名前で custom boardが作成されます。

次ページに続く

Page 12: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

12

BoardのところにF405が表示されました。次からはBoardのところでF405を選択することができます。

[Next >] ボタンをクリックしてさらに設定を行います。[Next >] ボタンをクリックすると次のダイアログが開きます。

次ページに続く

Page 13: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

13

2.6. Library使用の選択

Hardware Abstraction Layer (Cube HAL)のRadio Buttonをクリックすると、次の表示になります。

初めての場合、Target formware has not been found. Please download it.と表示されます。

[Download target firmware] ボタンをクリックしてダウンロードを行います。

[Download target firmware] ボタンをクリックすると次ページの License Agreementのダイアログが表示されます。

Page 14: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

14

I accept the agreement.にチェックを入れて[OK] ボタンをクリックするとダウンロードを開始します。

ダウンロードにはかなり時間がかかるので、ゆっくり待ちましょう。

Page 15: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

15

Downloadが終了するとExtracting処理が開始されます。Extractingが終了すると次の表示になります。

万が一、Libraryのダウンロードに失敗した場合は、Extractingでエラーメッセージが表示されます。

その場合は、表示されているパスを確認して、そのフォルダ内にあるダウンロードされたファイル stm32cube_fw_f4_vxxxx.zip

(vxxxxはバージョン) を削除して、再度 [Download target firmware] ボタンをクリックしてダウンロードを行ってください。

Page 16: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

16

Radio ButtonのAs sources in the application projectを選択して [Finish] ボタンをクリックします。

プロジェクトが作成されて、次のフォームが表示されます。

2.7. プロジェクトの初期画面

Page 17: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

17

3. ソースの編集

3.1. ソースファイルを開く

main.cを開いてみます。

main.cをダブルクリックすると、次のように main.cの内容を表示します。

この状態は、先頭のコメントがたたまれている状態です。先頭の数字3の右横のプラスをクリックすると次ページのように

コメント部分が表示されます。

Page 18: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

18

先頭のコメントの部分が表示されました。

3.2. ソース・フォルダの追加

Workspaceにソース・フォルダを追加するには以下のようにします。

Blink_LED_Status_10Kの下に追加したいのでProject ExplorerのBlink_LED_Status_10Kをクリックして選択状態にします。

Page 19: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

19

Blink_LED_Status_10Kを選択した状態でメニューの {File} – {New} – {Source Folder} をクリックすると

次のNew Source Folderのダイアログが開きます。

次ページに続く

Page 20: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

20

Folder nameにBlink_LED_Statusと入力して[Finish] ボタンをクリックすると、次のように左側のProject Explorerの

Workspaceの部分にソースフォルダBlink_LED_Statusが追加されます。

Page 21: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

21

エクスプローラでフォルダを確認するとBlink_LED_Status_10Kの下にBlink_LED_Statusが作成されています。

3.3. ファイルの追加

1) 新規ソースファイルの追加

ソースフォルダBlink_LED_StatusにソースファイルBlink_LED_Status.cを追加する場合について説明します。

ソースフォルダBlink_LED_Statusをクリックして選択状態にします。

Page 22: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

22

ソースフォルダBlink_LED_Statusを選択した状態で、{File} – {New} – {Source File} をクリックすると次のNew Source Fileの

ダイアログが開きます。

次ページに続く

Page 23: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

23

Source fileの欄にBlink_LED_Status.cと入力して[Finish] ボタンをクリックします。

ソースフォルダBlink_LED_Statusの下にBlink_LED_Status.cが作成されて、Editorには内容が表示されています。

Page 24: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

24

2) 新規ヘッダファイルの追加

ソースフォルダBlink_LED_StatusにヘッダファイルBlink_LED_Status.hを追加する場合について説明します。

ソースフォルダBlink_LED_Statusをクリックして選択状態にします。

ソースフォルダBlink_LED_Statusを選択した状態で、{File} – {New} – {Header File} をクリックすると次のNew Header Fileの

ダイアログが開きます。

Page 25: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

25

Header fileの欄にBlink_LED_Status.hと入力して[Finish] ボタンをクリックします。

次ページに続く

Page 26: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

26

ソースフォルダBlink_LED_Statusの下にBlink_LED_Status.hが作成されて、Editorには内容が表示されています。

エクスプローラでフォルダBlink_LED_Statusを見てみるとBlink_LED_Status.cとBlink_LED_Status.hが作成されています。

Page 27: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

27

3.4. 既存のソースフォルダとファイルの追加

プロジェクトBlink_LED_Status_10KにソースフォルダHAL_Handle_F4を追加する場合について説明します。

HAL_Handle_F4には各周辺インターフェースごとの初期化と処理のためのファイルが収められています。

りばいぶ が作成したモジュール群です。

1) ソースフォルダとファイルの追加

エクスプローラを使用してBlink_LED_Status_10Kの下にソースフォルダHAL_Handle_F4をコピーします。

フォルダHAL_Handle_F4の中を見てみると、いろいろな周辺インターフェースのためのファイルが格納されています。

Ac6 System Workbench for STM32の画面に戻って、HAL_Handle_F4を追加します。

次ページに続く

Page 28: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

28

Project ExplorerのBlink_LED_Status_10Kをクリックして選択状態にします。

Blink_LED_Status_10Kを選択した状態で右クリックしてポップアップメニューを開き、{Refresh}をクリックすると、

次ページのようになります。

Page 29: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

29

HAL_Handle_F4が追加されました。

HAL_Handle_F4を展開すると、各周辺インターフェースのためのファイルが格納されています。

Page 30: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

30

2) ソースフォルダの認識

フォルダとしてHAL_Handle_F4が追加されましたが、まだ、ソースフォルダとしては認識されていません。

ソースフォルダとして認識させるためには、以下のようにします。

HAL_Handle_F4をクリックして選択状態にし、右クリックにより開くポップアップメニューの{New} – {Source Folder} を

クリックすると次のNew Source Folderのダイアログが開きます。

Folder nameの [Browse...] ボタンをクリックすると次ページのExisting Folder Selectorのダイアログが開きます。

Page 31: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

31

HAL_Handle_F4をクリックして選択状態にして、[OK} ボタンをクリックします。

Folder nameの欄にHAL_Handle_F4が入力されているので、[Finish] ボタンをクリックします。

次ページに続く

Page 32: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

32

HAL_Handle_F4にソースフォルダのマークがついてソースフォルダとして認識されたのがわかります。

4. パスの設定

ソースフォルダを追加した場合、パスの設定を行う必要があります。ヘッダファイルが格納されているフォルダに対して

パスの設定を行わないと、ビルドエラーが発生します。

1) パスの設定画面を開く

まず、Blink_LED_Statusをクリックして選択状態にします。

Page 33: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

33

Blink_LED_Statusを選択した状態で、メニューの {Project} – {Properties} をクリックすると次のダイアログが開きます。

次ページに続く

Page 34: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

34

C/C++ Generalの下の Path and Symbolsをクリックすると次の表示になります。

次ページに続く

Page 35: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

35

2) パスの追加

a) Configurationの選択

Configurationの選択を[ All configurations ] にすると、Debug と Release のPathをいっぺんに設定できます。

b) パスの追加

GNU Cをクリックして選択状態にし、[Add...] ボタンをクリックすると次のダイアログが開きます。

Page 36: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

36

[Workspace...] ボタンをクリックすると次のダイアログが開きます。

次ページに続く

Page 37: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

37

Blink_LED_Status_10Kを展開して、HAL_Handle_F4をクリックして選択状態にし、[OK] ボタンをクリックします。

Directoryに/Blink_LED_Status_10K/HAL_Handle_F4が入力されているので[OK] ボタンをクリックします。

次ページに続く

Page 38: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

38

Path and SymbolsのGNU_Cにおいてスクロールバーを下にさげるとHAL_Handle_F4が追加されているのがわかります。

Blink_LED_StatusとCommon_Lib および Initialize_Peripheralも追加したら [OK] ボタンをクリックしてください。

(プロジェクトサンプルとしてSfStS_Blink_LED_Status_10K.zipを当サイトからダウンロードできます。)

確認メッセージが表示されるので、[Yes] ボタンをクリックしてください。

これで、パスの設定は終了です。

Page 39: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

39

5. startupファイルの変更

デフォルトで設定されている startup_stm32.sはペクターが設定されていないので、割り込みなどが正常に動作しません。

エクスプローラでフォルダstartup内に startup_stm32f405xx.sをコピーします。

startup_stm32f405xx.sは当サイトのプロジェクトサンプルのフォルダstartup内にあります。

次ページに続く

Page 40: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

40

startupをクリックして選択した状態で、右クリックして開くポップアップメニューの{Refresh}をクリックしてください。

startup_stm32f405xx.sが追加されました。

次に、startup_stm32.sを削除します。

Page 41: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

41

startup_stm32.sをクリックして選択した状態で、右クリックで開くポップアップメニューから {Delete} をクリックします。

[OK] ボタンをクリックします。

次ページに続く

Page 42: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

42

startup_stm32f405xx.sだけになりました。

6. 不要なファイルの削除

プロジェクトの容量が非常に大きくなってしまうので不要なファイルを削除します。

1) 不要なヘッダファイルの削除

エクスプローラでフォルダCMSIS\deviceを見ると多くのMCU用の定義ファイルが存在します。

stm32f405xx.h以外は必要ないので削除します。

Page 43: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

43

stm32f405xx.hだけを残して、他のMCUの定義ファイルは削除しました。

2) User Manualの削除

エクスプローラでフォルダHAL_DriverをみるとUser_Manualが多数あります。

必要ないので削除します。

Page 44: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

44

User_Manualのファイルを全て削除しました。

3) stm32f4xx_hal_msp_template.cの削除

HAL_Handle_F4内に stm32f4xx_hal_msp.cが存在するためHAL_Driver内の stm32f4xx_hal_msp_template.cがあると、

同一名のモジュールが存在してビルドエラーが発生します。

stm32f4xx_hal_msp_template.cをクリックして選択した状態で右クリックにより開くポップアップメニューの{Delete} をクリックして

削除してください。

Page 45: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

45

7. プログラムの開始番地を0x08010000に設定する方法

tri-S CPU基板はプログラムの開始番地を0x08010000にしています。

7.1. LinkerScript.ld内のROM(rx)の値の変更

/*---------------------------------------------------------------*/

/* ROM (rx) : ORIGIN = 0x8000000, LENGTH = 1024K*/

/*---------------------------------------------------------------*/

/* 2016.05.30 : Revive */

ROM (rx) : ORIGIN = 0x08010000, LENGTH = 1024K-0x10000

/*---------------------------------------------------------------*/

ROM (rx)の開始番地を0x08010000に変更します。

次ページに続く

Page 46: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

46

7.2. ファイルstm32f405xx.h内の定義の変更

stm32f405xx.h内の842行目あたりの定義 #define FLASH_BASE の値を次のように変更します。

//----------------------------------------------------------------------------

//#define FLASH_BASE ((uint32_t)0x08000000U)

/*!< FLASH(up to 1 MB) base address in the alias region */

//----------------------------------------------------------------------------

// 2016.05.30 : Revive

#define FLASH_BASE ((uint32_t)0x08010000)

/*!< FLASH(up to 1 MB) base address in the alias region */

//----------------------------------------------------------------------------

FLASH_BASEの定義を ((uint32_t)0x08010000) に変更します。

次ページに続く

Page 47: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

47

7.3. Vector tableの設定

int main(void)の先頭に以下のVector設定を記述します。

//----------------------------------------------------------

// Set the Vector Table base address at 0x080x0000

//----------------------------------------------------------

SCB->VTOR = FLASH_BASE; // Vector Table Relocation in Internal FLASH

7.4. りばいぶ のサンプルプログラムの番地割り当てについて

a) 0x080010000番地にユーザープログラムを書き込むためのプログラム格納番地

0x08000000 - 0x08007FFFには、更新したプログラムを0x08010000に書き込むためのプログラムが書き込まれています。

b) パラメータの格納番地

また、0x08008000 - 0x0800BFFFはNetwork設定パラメータを格納するために使用しています。

0x0800C000 - 0x0800FFFFは、ユーザーが定義したパラメータを設定するためのエリアとして使用します。

c) JIS X 0208 の 16 x 16bit のフォントを格納する番地

0x08080000 – 0x080BFFFF番地にLCD接続時に漢字を表示するためのフォントを格納しています。

d) 「飛石伝い」のための振舞い方パラメータを格納する番地

0x080C0000 – 0x080FFFFF番地に、「飛石伝い」のプログラムを実行する場合の振舞い方パラメータを格納しています。

この番地割り当ては、あくまでも、りばいぶ の使用方法なので、これに従う必要はありません。

Page 48: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

48

8. プロジェクトのビルド

8.1. 内容を変更したファイルの保存

ファイルの内容を変更すると、ファイルの名前の左に * マークが表示されます。

ファイルを保存すると * マークは消えます。

Ac6 System WorkbenchではBuildのアイコンをクリックしてビルドを開始するときにファイルが自動的に保存されません。

ファイルを保存しないとファイルの変更結果がビルドにも反映されません。

メニューの{File} – {Save All} をクリックして、ファイルを全て保存してからビルドを行わなければなりません。

Page 49: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

49

8.2. ビルド

Buildのアイコンをクリックするとプロジェクトのビルドを行います。

ビルド中は上記のダイアログが表示されます。

最初のビルドの場合、数分かかります。ゆっくり待ちましょう。

Page 50: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

50

エラーがあるとBlink_LED_Status_10Kの左にエラーマークが表示されます。

また、フォームの下部のProblemsにはエラー内容が表示されます。ファイル内容の表示画面のエラーの箇所にもエラーマークが

表示されます。

ビルドがOKになると、それぞれのエラー表示はなくなります。

Page 51: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

51

9. デバッグ

9.1. デバッグの準備

tri-S CPU基板にST-LINKを接続し、CPU基板に電源を供給します。

1) ST-Link/V2 と tri-S CPU基板との接続の様子

2) ST-Link/V2 と tri-S CPU基板との接続信号

ST-Link/V2 と tri-S CPU基板のコネクタ P4 との接続信号を以下に示します。

ST-Link/V2 tri-S CPU基板 線色

CN3-1 VAPP P4-1 VDD 橙

CN3-9 SWCLK P4-2 SWCLK PA14 緑

CN3-8 GND P4-3 GND 黒

CN3-7 SWDIO P4-4 SWDIO PA13 黄

CN3-15 NRST P4-5 NRST 青

Page 52: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

52

9.2. デバッグ

虫のアイコンをクリックするとデバッグを開始します。

初めてDebugのアイコン(虫のアイコン)をクリックした場合、次のダイアログが表示されます。

次ページに続く

Page 53: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

53

Ac6 STM32 C/C++ Applicationを選択して[OK] ボタンをクリックします。

この例ではデバッグ情報をロード中のダイアログが表示されませんでしたが通常、次のようなダイアログが表示されます。

このメッセージが表示されたら、[Yes] ボタンをクリックします。

Page 54: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

54

1) プログラムの実行

プログラムの開始位置が緑のマーカーで示されています。

右向きの三角 [Resume] のアイコンをクリックするとプログラムを実行します。

2) プログラム実行の中断

[Suspend]のアイコンをクリックするとプログラムの実行を中断します。

Page 55: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

55

この例では、Blink_LED_Status.c内の関数Blink_LED_Statusのなかで中断しました。

次ページに続く

Page 56: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

56

3) ブレークポイントの設定

Timer割り込みのところにブレークポイントを設定してみます。

プログラム行の左側の行番号の左側をダブルクリックするとブレークポイントを設定できます。

また、ブレークポイントを設定したい行をクリックして、その行でカーソルが点滅している状態で

メニューの {Run} – {Toggle Line Breakpoint} をクリックしてもブレークポイントを設定できます。

ブレークポイントが設定されるとブレークポイントのマークが表示されます。

この状態で、プログラムを実行すると次のようにブレークポイントのところでブレークします。

Page 57: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

57

ブレークポイントを設定した箇所でブレークしました。

4) ブレークポイントの解除

ブレークポイントのマークをダブルクリックするとブレークポイントを解除できます。

また、ブレークポイントが設定されている行にカーソルを点滅させている状態でメニューの

{Run} – {Toggle Line Breakpoint} をダブルクリックすることによってもブレークポイントを解除できます。

上記画面はブレークポイントを解除して、再びプログラムを実行している状態です。

Page 58: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

58

10. Ac6 System Workbenchの終了

1) 実行の中断とデバッグの終了

[Suspend]のアイコンをクリックすると実行が中断されます。

この状態で、[Terminate]のアイコンをクリックすると、デバッグ状態を終了して次のようになります。

2) エディット画面に戻る

C/C++のタブをクリックするとプログラム作成のエディットの画面に戻ります。

Page 59: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

59

3) Ac6 System Workbenchの終了

[X] ボタンをクリックすると次のメッセージが表示されます。

[OK] ボタンをクリックするとAc6 System Workbenchが終了します。

Page 60: Windows10 のプロジェクト作成方法 2017/06/23 …tri-s.world.coocan.jp/Ac6_HAL_F405/Ac6_Create_Project...Project typeにAc6 STM32 MCU Projectを選択してProject nameにBlink_LED_Status_10Kを入力して[Next

60

有限会社りばいぶ

電子工作のための「飛石伝い」

改訂履歴

V002 2017/06/23

1) 誤記訂正 : 7. プログラムの開始番地を0x08010000に設定する方法 の

ユーザーが定義したパラメータを設定するためのエリア の番地を訂正

2) 番地割り当てについての説明を追加

V001 2016/06/01 初版