= Flashにsample1を焼く Windows環境で作業する場合、LPC2388へのFlashへの書き込みには[http://www.flashmagictool.com/ FlashMagic]を使います。FlashMagicの代わりにLinux用ではフリーな[http://sourceforge.net/projects/lpc21isp/ lpc21isp]を使う事が出来ます。 == lpc21ispの取得とmake [http://sourceforge.net/projects/lpc21isp/ Sourceforgeのlpc21ispプロジェクト]からソースをダウンロードします。この文書を書いている時点でバージョンは1.64でした。解凍してmakeを実行するだけです。特にビルドには問題は起きないはずです。 適当な場所にバイナリを置いてパスを通してください。例えば /opt/lpc23isp ディレクトリにバイナリを置き、.bashrc ファイルに以下の一文を追加しておきます。 {{{ code sh export PATH=$PATH:/opt/lpc21isp }}} == sample1のhexを作る 現時点でTOPPERS/JSPはhexファイルを生成しません。将来的にはソースツリーを変更してhexファイルも生成するように変更しますが、取得したソースツリーからhexファイルが生成されないときには以下のコマンドを実行するとhexファイルを作ることが出来ます。 {{{ code sh arm-none-eabi-objcopy -O ihex -S jsp jsp.hex }}} jspファイルはELFです。objcopyはELFの再配置情報を読み取って、バイナリデータを対応するアドレスのhexレコードに変換します。 (チケット#18448で対策を打ちました。以後、コンフィグレータが生成するMakefileにはhexの生成コードが含まれます) == sample1を焼く CQ-FRK-NXP-ARMへの書き込みは以下のように行います。 {{{ suikan:~$ lpc21isp -hex jsp.hex /dev/ttyUSB0 57600 4000 lpc21isp version 1.64 File jsp.hex: loaded... converted to binary format... image size : 26216 Synchronizing (ESC to abort). OK Read bootcode version: 3 3 Read part ID: LPC2388, 512 kiB ROM / 98 kiB SRAM (0x1800FF35) Will start programming at Sector 1 if possible, and conclude with Sector 0 to ensure that checksum is written last. Sector 1: ............................................................................................... Sector 2: ............................................................................................... Sector 3: ............................................................................................... Sector 4: ............................................................................................... Sector 5: ............................................................................................... Sector 6: ........................................... Sector 0: ............................................................................................... Download Finished... taking 139 seconds Now launching the brand new code }}} ここで、/dev/ttyUSB0は、USBケーブルで接続したCQ-FRK-NXP-ARMのUSBシリアル変換チップのLinuxでのデバイス名です。この名前はシステムごとに変わると思われますので、自分のシステムでのデバイス名を確認しておいてください。57600は転送速度です。どのくらいの速度まで転送できるか試してみると良いでしょう。4000はkHzで表したクロック周波数です。