OpenOCD JTAGボードと接続できず、、、 [ARM&Cortex-M3]
今回家のパソコンに上記環境を構築し、開発ができるようにと思っていたのですが、、、
OpenOCDはどうやらタッチの差でバージョンはver0.2.0に上がっているようで、すでにダウンロードサイトからはver0.1.0は削除されています。
まあバージョンが上がっていると言う事はリファインされているのでしょうから、こちらをインストールして見ました。これがトラップだとは思わずに。
OpenOCDのver0.2.0をインストールしたところでコマンドラインから接続を試みます。
ですが何故か「fdtiデバイスがOpenできない」、「ファイルcommand.cの469行目がエラー」とメッセージを表示して終了です。訳判りません。
ぐぐると同様のエラーに付いて若干情報がありますが、これはどうも古いバージョンでの話みたいです。
OpenOCDにはソースコードも一緒に入っていますので、command.cの469行目を見る事ができますが、出来たからと言ってコンパイルができる訳ではないので無意味ですね。
この場合、こちらの環境や設定が悪いのか、それともOpenOCDのバグか?と言う事になります。
そこでまずは環境面から。
当初インストールしたパソコンは、メインで使用してるWin2KがインストールされたX24です。FDTIの最新のドライバーが既に入っていますので、JTAGボードを接続したからと言ってあらためてドライバーを取って来る事はしません。普通に認識して、勝手にドライバーが組み込まれて、それで終了です。
で、この環境では全く駄目でした。
次にXPがインストールされたコンパックノートです。キーボードがタイプし難いので普段は持ち出しません。
こちらも当初はFTDIの最新ドライバーが組み込まれていました。その状態でも駄目です。やはり「FDTIデバイスがOpenできない」と言ってきます。
しょうがないので、FTcleanを使ってFDTIのドライバーを一旦削除した上で、ドライバーの再インストール、OpenOCDのテスト、、、これでも駄目です。
「このバージョンまともに動かないんじゃないのかなぁ、、、」
設定面から試してみましょう。
当初はDWMのOPEN OCD JTAGの記事の通りにFTDIのプロファイルを設定しましたので、デスクリプターはmyJTAGとしてありました。
これを、vidやpidは変更せず(と言うかできない)にOlimexのデスクリプター名に変更し、OpenOCDに添付されているOlimex用の設定ファイルを使用して試験です。
んが!、やっぱり駄目です。
「いよいよこのバージョンが怪しいぞ、、、」
じゃあOpenOCDはどうなのよ!
ver0.1.0では動いていたのでver0.1.0をインストール、、、したいところですが、少なくともネット上を検索してもver0.1.0のインストールファイルが見つかりません。なんてこった、トホホ。
過去に使ったインストールファイルなんてとっくの昔に削除しているので、パソコン上にも存在しません。
と、ここまででうんざりして放棄です。「これだからxPENなんとかは、、、実用性がxxんだよなぁ。」
さて、2、3日離れてちょっとだけ気分が盛り返してきたので考え直してみました。
「そもそもインストーラでインストールするとは言え、コマンドラインから単体動作できるんだから、ver0.2.0のexeを捨てて、代わりにver0.1.0を上書きしてしまっても動くんじゃないのかな。」
早速実行です。会社のパソコンにはver0.1.0のexeが有るのでこれを家のパソコンに上書きで入れ直してチャレンジ!。無事JTAGボードやSTM32F103と接続できました。
「なんだかアホみたい、、、ブツクサ、ブツクサ。」
と言う訳でver0.2.0をインストールして同様に悩んでいる方、ver0.1.0のexeを用意してお待ちしておりますので御連絡くださいね。
ARM Cortex‐M3システム開発ガイド―最新アーキテクチャの理解からソフトウェア開発までを詳解 (Design Wave Advance)
- 作者: Joseph Yiu
- 出版社/メーカー: CQ出版
- 発売日: 2009/05
- メディア: 単行本
ARM組み込みソフトウェア入門―記述例で学ぶ組み込み機器設計のためのシステム開発 (Design Wave Advanceシリーズ)
- 作者: Andrew N. Sloss
- 出版社/メーカー: CQ出版
- 発売日: 2007/08
- メディア: 単行本
2009-07-25 11:00
nice!(0)
コメント(19)
トラックバック(0)
「ややちゃん」とか「aosima0714」とか(笑)
ぐぐると何と言う自作自演。
しかしコメントを入れるには”一応”、このソネブロの、あの読み難い文字を入力しないとできないので、その努力は認めよう!。
by hamayan (2009-07-25 16:30)
ああそうか!、こやつはあちこちのblogのアカウント取りまくっているから、ソネブロでもNo checkでコメントできるのか。
ソネブロの仕様の穴だな。
by hamayan (2009-07-25 16:45)
simさんにver0.1.0のmsiを頂きました。
by hamayan (2009-07-26 09:27)
こんにちは
こういうことがあると、インストールファイルって残しておく方がいいのかな、なんて思いました。それにしてもバグを取りまくって0.2.0にしたみたいなことが書いてあるくせに、このていたらくは悲しいです。
by Sim (2009-07-26 17:55)
まあ今の段階では、実はこちらに落ち度があるかも知れない事を否定できないのですけれどね。
それは今後判るでしょうけれど、できれば旧バージョンも残しておいて欲しかったですね。
by hamayan (2009-07-26 19:03)
はじめまして。
ver0.2.0をインストールして同様に悩んでいます。
ver0.1.0のexe(よかったらmsiも)ご提供していただけないでしょうか。
by へっぽこ回路師 (2009-08-05 00:48)
まずはメールを送ってください。
このblogの一番上、タイトルの下にgmailのアカウントが記載されていますので、これに@gmail.comをつけて送ってください。
by hamayan (2009-08-05 07:41)
初めましてzusと申します。
WindowsでOpenOCD Ver0.2.0以降のソースをビルドする手順を
作ってみましたのでよろしかったらご覧ください。
http://homepage3.nifty.com/zus/OpenOCD_Build_win32_Flame.html
by zus (2009-08-09 17:00)
はじめまして、Cortex M3の環境構築の記事は大変参考になりました。
今回のページと言い、Cortexのページと言い、大変手間を掛けて作成された事が想定でき、本当にお疲れ様でした。
さて早速OpenOCDの方もビルドを行ってみてみましたが、Makeファイルを作成する段階で上手く行きませんでした。
具体的には
hamayan@OLD-TOYS /home/openocd/trunk
$ ./configure --enable-maintainer-mode --disable-werror --disable-shared --enab
le-ft2232_ftd2xx --with-ftd2xx-win32-zipdir=/home/openocd/ftd2xx CC="gcc -mno-c
ygwin"CFLAGS="-O0 -g -Wall"
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking for gcc... gcc -mno-cygwinCFLAGS=-O0 -g -Wall
checking for C compiler default output file name...
configure: error: in `/home/openocd/trunk':
configure: error: C compiler cannot create executables
See `config.log' for more details.
でエラー終了しています。
もう一度始めから見直してみます。
by hamayan (2009-08-09 23:36)
こんにちはzusです。
エラー内容を検証しました。
すみません、私の記述に誤りがありました。
最後のほうの
CC="gcc -mno-cygwin"CFLAGS="-O0 -g -Wall"
ですが正しくは
CC="gcc -mno-cygwin" CFLAGS="-O0 -g -Wall"
^ スペースが必要
でした。
ページにコマンドを書くときにスペースを忘れてしまったようです。
ご指摘頂きありがとうございます。
by zus (2009-08-11 10:14)
御連絡ありがとうございます。
無事、openocdのビルドを完了させる事ができました。
指摘されてみれば、なんと単純な修正点。
しかしまったく気付けなかったところが私のスキルの低さ、及び限界点です、トホホ。
by hamayan (2009-08-11 21:02)
はじめまして。
自分もzusさんの記事、参考にさせていただいてます。
OpenOCDのビルドのところで、質問させてください。
configureツールの実行時に、hamayanさんと同様のエラーが
出てしまい、makeファイルの作成ができません。
上記のように、パラメータは修正してあるのですが、
何か他に注意するところはあるのでしょうか。
いきなりの質問で恐縮ですが、よろしくお願いします。
by Sisco (2009-09-09 18:06)
どうもです。
上記問題に対する解答ではないのですが、実際のところOpenOCDのバージョンは、0.3.0から0.1.0に戻して使っています。
0.3.0は、LEDチカチカの様な小さなプログラムでは動いていたのですが、ROMの半分以上を使用する比較的大きなプログラムでは何故かちゃんと動いてくれません。
一応確実に動くと思われる0.1.0も用意しておいた方が宜しいかと思われます。
by hamayan (2009-09-10 04:08)
情報ありがとうございます。
現在のところ、ARM-USB-TINYに付属のCD-ROMからインストールして
使用しております。
openocd-ftd2xx.exe のVer 1.0 です。
まだやっと接続ができるようになった段階で、Flashの書き込みなどが
うまくいっていない状況ですが、いろいろやってみます。
by Sisco (2009-09-11 17:52)
すみません、私にもver0.1.0いただけないでしょうか。
どうも、svnでソースが落とせないので、zipファイルの0.4.0でやってみると、bootstrapがありません。これを飛ばしてやってみると、openocd.exeはできるのですが、jtagとはつながりません。
そこで、ご指示に従い、0.1.0を用意しておこうと思った次第です。
すみませんが、よろしくお願いします。
by DAI (2010-03-22 01:37)
お送りしました。
by hamayan (2010-03-22 08:26)
早速ありがとうございます。
えっと、これは、解凍後、後ろの.v010を取り除くということですね。
うまくいけば報告します。
by DAI (2010-03-22 14:03)
こんばんは。現在のところつながりません。
デバイスマネージャーでは組み込まれているのですが、FTDIドライバーにコネクトしないと言ってきます。
010、020、030どれもです。後考えられるのは、CPUがAMD、FTDIドライバーのバージョンが2.06くらい。
もう一度、原点に戻ってみます。
by DAI (2010-03-26 01:01)
どうやらつながったようです。
EEPROMに書き込みをしていなかったんですね。
いつ書き込むのだろう、位にしか思っていませんでした。
hamayanさんのドライバーを入れ替えるとMProgがつながらなくなるとの記述をみて、改めてMProgの画像をみると、何を書き込んでいるのか理解できました。
ただ、zusさんと同じwarn が出ています。これは何なのでしょうか。
自分でコンパイルしてみた、0.4.0や0.5.0では、メッセージの / 以降がエラー扱いになっていました。
まだまだcfgファイルの記述に疑問はあるのですが、ぼちぼちと試しながら理解していきます。
さて、次はEclipseの設定です。
by DAI (2010-03-28 01:16)