FRK-FM3 (6) FLASH USB DIRECT Programmer2012年11月20日 22時08分09秒

USB デバイスが認識されません
書き込み速度が遅くて使う気になれない FRK-FM3 を片付ける前にもう一度動かしてみようと、以前作ったプロジェクトをコンパイル。

Build target 'arm-none-eabi-gcc-4_6'
linking...
arm-none-eabi-gcc: error: unrecognized command line option '-Wl'
Target not created
エラーだ。
どうして次から次へと問題が出てくるのだ。
今までこんな所でエラーになったことは無い。コンパイラの解釈が変わったのか?

toolchain を Sourcery gcc 4.5.1 に戻すと問題ない。そういえば先日 gcc-4.6.3 を gcc-4.7.2 に変更したばかりだった。

-Wl がなければ問題ないが µVision4 では built-in なので削除できない。
何かいい方法は無いかといろいろやっていて、Map file を作成する事がこのエラーから逃れられる唯一の方法であることがわかった。これからは µVision4 を使う限り Map file の作成が必須だ。

さて、何をしようとしていたんだっけ? コンパイルができたので FRK-FM3 を接続し書き込もうとすると

USB デバイスが認識されません

おいおい、これもか?

RESET を実行してもだめ。
USB ケーブルを抜き差ししてもだめ。
FUJITSU USB DIRECT Programmer を新規インストールしても認識しないのでドライバのインストールすらできない。
数えるほどしか使ってないのに壊れたのか?
片付けるために USB コネクタを外そうとすると「ピコン!」あの懐かしい音がした。
どうやらコネクタの接触不良のようだ。何回か抜き差ししているうちに安定してきた。

USB DIRECT Programmer で書き込んでみる 67.02秒 (1112bytes) 以前と変わらぬ遅さだ。
専用のライターソフトを作れば問題ないだろうが私にそんな力は無い。
また、富士通も力を入れてないので使い勝手のいいライターを期待するのは無理だろう。
そこで、現在の環境のまま書き込みのスピードアップを図ることにする。
何とかして短いプログラムは短時間で書き込みたい。それではとデバイスの設定を MB9BF616S/T にしてみると 39.86秒。
おお!!これか?
さらに MB9BF311L/M/N にすると 18.16秒。
これ以下は無いので自分で作成してみた。
C:\Program Files\Fujitsu\FUJITSU USB DIRECT Programmer\chipdef.ini
[MB9BF618S/T_16k]
DownloadFile=m_flash.9a314
LoadAddress=0x20000000
StartAddress=0x000000,0x100000
EndAddress=0x003FFF,0x100001
FlashSize=0x004000,0x000002
Clock=4MHz,48MHz
Baud=9600,9600
Baud2=115200,115200
16kの設定だ。14.53秒
書き込みはすぐ終わるがイレースに時間がかかる。これ以上の短縮は難しそうだ。m_flash.9a314 の変更ができればまだ短縮はできるかも知れないが MB9BF311L/M/N までにしておこう。
ちなみにフラッシュのサイズは以下のようになっているので書き込むサイズに応じてデバイスを選択しよう。(手間のかかるライターだ。)
Part Number	Flash Size
MB9AF311L/M/N	64k  (0x10000)
MB9AF312L/M/N	128k (0x20000)
MB9AF314L/M/N	256k (0x40000)
MB9AF315M/N	384k (0x60000)
MB9BF616S/T	512k (0x80000)
MB9BF617S/T	768k (0xC0000)
MB9BF618S/T	1M   (0x100000)

これでやっと我慢できるレベルになった。
なんてったってテストだから短いプログラムばかりだ。60秒以上待たされたのではやる気も失せる。

環境:FRK-FM3 (MB9BF618T)
    + FUJITSU USB DIRECT Programmer V01L07
    + Keil MDK-ARM V4.53
    + GCC Sourcery CodeBench Lite 2012.09-63
    + KPIT Cummins GNU-Archive Editor v1.1
    + KPIT Cummins GNU-Map Viewer v1.0