1
STM32L-Discoveryファームウェア更新アプリケーション Update_STM32L1xxの説明 2014/02/09
STM32L-Discoveryのファームウェアを更新するためのWindouws7 PCのアプリケーションです。
USBのVCP(仮想COMポート : 非同期シリアル通信) または RS232C を使用してファームウェアを更新します。
書き込むファームウェアはAtollic TrueSTUDIO for ARM Lite で作成される elfファイルで、
CPUの 0x08004000番地から書き込まれ、更新が終了すると自動的に実行開始されます。
書き込むファームウェアは プログラムの開始番地が 0x08004000 に設定されている必要があります。
また、ファームウェア更新アプリケーションUpdate_STM32L1xxはプログラムコードのチェックサムを書き込みます。
チェックサムは、CPUのプログラムSTM32L_Update_xxx.binプログラムにより判定されますので elfファイルは
ファームウェア更新アプリケーションUpdate_STM32L1xxにより書き込まないと正しく実行されません。
(なお、SWDによるデバッグ時は、上記にかかわらず正しく動作します。)
STM32 ST-LINK Utilityを使用してCPUの 0x08000000番地に STM32L_Update_xxx.bin を書き込んで使用します。
STM32 ST-LINK Utilityについては「STM32 ST-LINK Utilityのダウンロードとインストール方法」 をご覧ください。
STM32L_Update_xxx.binはSTM32L_Update_UART.binもしくはSTM32L_Update_VCP.binです。
目次
1. はじめに ................................................................................................................................................................................................................................................................. 2
1.1. STM32L_Update_xxx.binのダウンロード .................................................................................................................................................................................. 2
2. Windows7 PCと STM32L-Discoveryとの接続 .............................................................................................................................................................................. 3
2.1. RS232Cによる UART接続 ........................................................................................................................................................................................................... 3
2.2. USBのVCP(仮想COMポート)による接続 ............................................................................................................................................................................ 5
3. STM32 ST-LINK UtilityによるCPUへの STM32L_Update_xxx.binの書き込み ........................................................................................................... 6
4. STM32Lファームウェア更新アプリケーションのダウンロードとインストール ..................................................................................................................... 6
4.1. Update_STM32L1xx_Install.zipのダウンロード ...................................................................................................................................................................... 6
4.2. Update_STM32L1xxのインストール ......................................................................................................................................................................................... 6
5. STM3L_Update_xxxの使い方 ................................................................................................................................................................................................................... 8
5.1. COMポートの選択 ............................................................................................................................................................................................................................... 8
5.2. ファームウェアの更新..................................................................................................................................................................................................................... 10
6. STM32L-Discoveryのプログラムエリアについて ....................................................................................................................................................................... 13
7. チェックサムについて .................................................................................................................................................................................................................................. 13
2
1. はじめに
STM32L-Discoveryのファームウェアの更新アプリケーションUpdate_STM3L1xxの使用方法を説明します。
1) STM32L_Update_xxx.binのダウンロード
2) Windows7 PCと STM32L-Discoveryとの接続
3) STM32 ST-LINK UtilityによるCPUへの STM32L_Update_xxx.binの書き込み方法
4) STM32L-Discoveryのファームウェア更新アプリケーション Update_STM32L1xxのインストールと使い方
について説明します。
1.1. STM32L_Update_xxx.binのダウンロード
STM32L_Update_xxx.binは次の2種類です。
1) STM32L_Update_UART.bin
RS232C接続による UART(非同期シリアル通信)によりファームウェアを更新します。
ダウンロードファイルはSTM32L_Update_UART_Binary.zipです。解凍すると STM32L_Update_UART.binになります。
2) STM32L_Update_VCP.bin
USBのVCP(仮想COMポート)接続による UART(非同期シリアル通信)によりファームウェアを更新します。
ダウンロードファイルはSTM32L_Update_VCP_Binary.zipです。解凍すると STM32L_Update_VCP.binになります。
「STM32L-Discoveryプロジェクトサンプルのダウンロードと解凍」を参考にして、希望する zipファイルをダウンロードして
解凍してください。
3
2. Windows7 PCとSTM32L-Discoveryとの接続
2.1. RS232CによるUART接続
STM32L-Discoveryの UART(非同期シリアル通信)に使用する信号と接続相手との接続は以下の通りです。
1) UART1 接続信号表
STM32L-Discoveryの UART信号
番号 CPU機能名 CPU信号名 基板コネクタピン番号 方向 接続相手の
信号名
D-SUB 9S
ストレート接続
1 USART1_TX PA9 P2-22 --- > RxD 2
2 USART1_RX PA10 P2-21 < --- TxD 3
3 GND GND P1-2, P1-9, P1-28
P2-2, P2-5, P2-28
< --- > GND 5
2) RS232C ドライバ接続例
この例ではDSUB-9SにはTxD, RxD, GNDの3本の信号以外は接続されません。
4
3) PCとの接続例
PCとの接続は以下のようになります。
RS232C
ドライバ DSUB-9S
PC
RS232C変換ケーブル
STM32L-Discovery
図2.1. 3)
5
2.2. USBのVCP(仮想COMポート)による接続
USBのVCP(仮想COMポート)による、PC と STM32L-Discoveryとの接続は以下のようになります。
PC
A
USBポート
USBケーブル : A - MiniB : 電源供給 および デバッグのため
図2.2.
STM32L-Discovery Mini B
MiniB
S
HEL
L
GND
ID
DP
DM
1 2 3 4 5 6 MiniBコネクタ
10Ω
10Ω
100kΩ
GND
PA11
PA12
VCP用MiniBコネクタの配線 USBケーブル : A – MiniB : VCP用
A
6
3. STM32 ST-LINK UtilityによるCPUへのSTM32L_Update_xxx.binの書き込み
STM32 ST-LINK UtitityはSTM32マイクロコントローラシリーズのCPUにファームウェア(プログラムコード)を書き込む
ためのWindowsアプリケーションです。
PCと STM32L-DiscoveryのCN1とを USBケーブル(A – Mini B)で接続して希望するBinaryファイルを
CPUの Flash Memoryの 0x08000000番地に書き込んでください。
書き込み方法については 「STM32 ST-LINK Utilityのダウンロードとインストール方法」 をご覧ください。
4. STM32Lファームウェア更新アプリケーションのダウンロードとインストール
4.1. Update_STM32L1xx_Install.zipのダウンロード
ファームウェア更新アプリケーションのインストールファイル Update_STM32L1xx_Install.zipをダウンロードして解凍して
ください。
4.2. Update_STM32L1xxのインストール
Update_STM32L1xx_Install.zipを解凍するとフォルダ Update_STM32L1xx_Install.が作成されてその中にインストール
ファイルが作成されます。
setup.exeをダブルクリックすると次ページの警告のダイアログが開きます。
7
[インストール(I)] ボタンをクリックしてインストールしてください。
プログラムがインストールされて自動的にUpdate_STM32L1xxアプリケーションが実行されて次のダイアログが表示されます。
通常は、スタートメニューから { Update_STM32L1xx } をクリックして起動してください。
8
5. STM3L_Update_xxxの使い方
Atollic TrueSTUDIO for ARM Lite で作成されるプログラムコードである elfファイルをCPUの 0x08004000番地から
書き込みます。更新が終了すると自動的にプログラムの実行が開始されます。
書き込むプログラムコードは プログラムの開始番地が 0x08004000 に設定されている必要があります。
この例ではRS232Cの UARTを使用して、ファームウェアを更新する場合について説明します。
USBのVCP(仮想COMポート)を使用してファームウェアを更新する場合も操作は同様です。
5.1. COMポートの選択
STM32L-DiscoveryにはSTM32L_Update_UART.binが書き込まれていて実行しているものとします。
1) COMポートの検索
PCと STM32L-DiscoveryとをRS232Cケーブルで接続して [COM検索] ボタンをクリックしてください。
検索できた場合、”COM(シリアルポート)を検索しました。” とメッセージが表示されます。
9
2) COMポートの指定
COM選択のComboBoxでCOMを選択してください。ここでは COM4 を選択しています。
選択した COMを使用するか聞いてきますので、OKならば [はい] ボタンをクリックしてください。
次ページに続く
10
“COM4に設定しました。” とメッセージが表示されています。
5.2. ファームウェアの更新
[Firmware更新] ボタンをクリックしてください。
次ページのファイル選択のダイアログが表示されます。
11
書き込みたいファームウェアを選択して [開く(O)] ボタンをクリックします。
ここでは STM32L_BlinkLED_4K.elf を選択しています。0x08004000番地から実行するように設定した LED点滅の
プログラムです。
OKなら [はい(Y)] ボタンをクリックします。
次ページに続く
12
書き込みが終了すると、このメッセージが表示されます。 [OK] ボタンをクリックして閉じてください。
書き込みの処理に従って上記のようにメッセージが表示されています。
STM32L_BlinkLED_4K.elfが0x08004000番地に書き込まれて、動作していると思います。
以上で、更新ファームウェアの書き込みは終了です。
13
6. STM32L-Discoveryのプログラムエリアについて
このファームウェア更新プログラムでは次のようにプログラムエリアを規定しています。
1) ファームウェア更新用プログラムSTM32L_Update_xxxの格納エリア
0x08000000 ~ 0x08003FFFにファームウェア更新用プログラムSTM32L_Update_xxxを格納します。
2) 実行させるプログラムのエリア
0x08004000 ~ 0x0801CFFFをユーザープログラムの格納エリアにしています。
3) パラメータエリア
0x0801E000 ~ 0x0801FFFFをパラメータ格納エリアとしてリザーブしています。
7. チェックサムについて
また、ファームウェア更新アプリケーションUpdate_STM32L1xxはプログラムコードのチェックサムを書き込みます。
チェックサムは、STM32L_Update_xxx.binプログラムにより判定されますので。elfファイルは
ファームウェア更新アプリケーションUpdate_STM32L1xxにより書き込まないと正しく実行されません。
なお、SWDによるデバッグ時は、上記にかかわらず正しく動作します。