040 マイコン徹底入門のeclipse開発ツールをまずは起動してSTM32-DISCOVERYをつないでみる
ちょっとてこずったeclipsのインストールでしたが、ビルドしてFLASHに焼いて動かすところまでを説明します.
FLASHを焼くのは、STMicro提供のDFUというツールがありますが、ここではST-LINKで焼きます.
ビルドするところまで
●eclipseを起動します.
C:\miqnnet\eclipse\eclipse.exe
●開発環境画面が出ます.
Project ExplorerペインにSamplesとSTM32のフォルダが見えています.
Samplesはsample source codeが入っているだけです.
STM32はprojectフォルダです.
ファイルを認識させるために次の不思議な操作をします.
1)Samplesを右クリックして色を変えます
2)F5を押します
3)一瞬画面が変化しますが2秒ぐらいで鎮まります
4)STM32を右クリックして色を変えます
5)F5を押します
6)一瞬画面が変化しますが2秒ぐらいで鎮まります
こうすることで、どこかにファイルの実体を認識させているようです.
●サンプルコードをprojectにコピペします.
まず、Samplesフォルダを開いて、さらにmiqnnetを開きます.
●miqnnetをずーっと下にスクロールして、test_obled_toggleを探します.
その中にあるファイルを右クリックするとプルダウンメニューが出ますので、3つともコピーします.
●STM32を右クリックして現れるプルダウンメニューからPasteします.
●オーバーライトしてよいかどうか聞いてきますので YesToAllをクリック.
●下記のmakefileをダブルクリックすると編集ペインが開きますので少し書き変えます.
オリジナルのmakefileはST-Bee用になっているようですので、STM32-DISCOVERY用に書き変えます.
●makefileを書き変える場所(その1)
before
# select board name
#STM32_P103 = 1
#STM32_H103 = 1
#CQ_STARM = 1
#CQ_ST103Z = 1
#STM3210E_EVAL = 1
STBee = 1
#STBee_Mini = 1
#STBee_Mini_SWD = 1
#STM32_VLD = 1
after
# select board name
#STM32_P103 = 1
#STM32_H103 = 1
#CQ_STARM = 1
#CQ_ST103Z = 1
#STM3210E_EVAL = 1
#STBee = 1
#STBee_Mini = 1
#STBee_Mini_SWD = 1
STM32_VLD = 1
●makefileを書き変える場所(その2)
before
# select way to write flash
# ST-LINK via SWD but not with STVP is done by Debug button
# but not by make target
#FT2232_JTAG = 1
#STLINK_JTAG_GDB = 1
#STLINK_SWD_STVP = 1
#VERSALOON_SWD = 1
#DFU = 1
UART = 1
after
# select way to write flash
# ST-LINK via SWD but not with STVP is done by Debug button
# but not by make target
#FT2232_JTAG = 1
#STLINK_JTAG_GDB = 1
STLINK_SWD_STVP = 1
#VERSALOON_SWD = 1
#DFU = 1
#UART = 1
●編集し終えたmakefileを忘れずにSAVEします.closeするのでもOK.
一般的な統合開発環境だと、編集途中のファイルに気づいてwarningを出してくれますけど、この環境はそれが出ません.
なので、編集途中でsaveしないでいると、makeが食いついてくれないので、ビルドに反映されませんです.
●makeします.
一般的な統合開発環境ではビルドと言いますけど、この環境ではmakeでやっているようなのでmakeと呼称します.
(makeの意味がわからない方は、そういうもんだと思ってスルーしてください)
手順はこうです.
1)下図のall_cleanをダブルクリックします.
画面の下方のConsoleペインの表示がダーッと出て止まりましたら完了です.
これは、.oのような生成ファイルを消す手続きです.
2)下図のallをダブルクリックします.
画面の下方のConsoleペインの表示がダーッと出て止まりましたら完了です.
コンパイル処理をしていますので、1分ぐらいかかります.
コンパイルが終わると 1 個のファイルをコピーしました。 と表示が出ます.
FLASHに焼く方法
以下はFLASHの焼き方です.2つの焼き方があります.
1) 上図のflashボタンをポチッと押して焼く方法.
焼いた後でUSBケーブルを抜き差ししないとSTM32-DISCOVERYが起動しないのでめんどくさいです.
2) STVPをつかって焼く方法.
STVPとはSTMicroが提供するFLASH焼きツールです.
STVPを起動し、.hexファイルをSTVPに読み込ませて、焼きます.
焼いた後ですぐにSTM32-DISCOVERYが起動するので便利です.
option BYTEを書き替えるのにもSTVPを使うことがあるので、わたしはSTVPがオススメです.
1 上図のeclipseのflashボタンをポチッと押して焼く方法
●以下の手順で焼きます.
1)まずSTM32-DISCOVERYをUSBケーブルでPCに接続します.
2)上図の flash をダブルクリックします.
3)すると、FLASHが焼かれます.
4)あまり画面が変化しないので心配になりますが、
画面下方のConsoleペインにつぎの表示が出るまで待ちます.
2分ぐらいかかるかも.
<<< Verifying PROGRAM MEMORY succeeds
●STM32-DISCOVERYを動かします.
Reset SWを押して起動したいところですが、そうはいきません.
Rest SWじゃ起動しないのです.
めんどくさいですが、USBケーブルを一旦抜いて挿します.
すると、LEDがせわしなくチカチカします.
これでFLASHを焼けたことがわかります.
2 STVPをつかって焼く方法
●STVPは、こちらのURLからダウンロードしてください.(2012.1.12現在)
http://www.st.com/internet/com/SOFTWARE_RESOURCES/TOOL/TOOLSET/sttoolset.zip
このダウンロードファイルには、STMicro社が提供するSTM8Sなどの統合開発環境STVDと一緒にSTVPが入っています.
STM32ではSTVDを使いませんが、STVP単独でダウンロードすることはできないようです.
ファイルサイズが大きいですけど我慢してダウンロードしましょう.
インストール方法は、こちらに書きました.少々情報が古いのですが、基本線は変わらないはずです.
http://stm8sdatasheet.web.fc2.com/STVD-project01-FlashLED/install-procedures.html#09_STVD_install
●まずSTM32-DISCOVERYをUSBケーブルでPCに接続します.
●STVPを起動します.
最初に起動するときには設定をしなくちゃいけないと思われます.
メニューから Configure→Configure ST Visual Programmer をクリックします.
●CPU種別とかインターフェースを選択します.この図のようにします.
設定後にOKをクリック.
なお、この設定は最初だけですので安心してください.
●STVPの画面にPROGRAM MEMORY というタグがあるので、それをクリック.
●まず、STM32-DISCOVERYのプログラムメモリを読み出してみましょう.
下記のボタンをクリックします.
すると、画面がゴチョッと動いて、表示もそれなりに変わると思います.
この時点でエラーで止まるようであれば、STVPの設定とUSBケーブルの接続を見直してみましょう.
●次に、焼くファイルを選択します.下記のボタンをクリックします.
●.hexファイルをSTVPに読み込ませます.
場所は、STM32フォルダの下のbinフォルダの中です.
main.hexを指定します.
●FLASHをeraseします.下記のボタンをクリック.
●FLASHに焼きます.下記のボタンをクリック.
●STM32-DISCOVERYを見ると、LEDがチカチカと動いているはずです.