|
一覧
検索
最新
ページへ戻る
履歴
LPC82x Bootloader
のバックアップソース(No.2)
knowledge
:
LPC82x Bootloader
のバックアップソース(No.2)
差分
を表示
現在との差分
を表示
LPC82x Bootloader
へ行く。
« Prev
Next »
TITLE:LPC82x Bootloader LPC82x Bootloader knowledge:STM32F3 Bootloader #norelated #contents **はじめに [#h3cf836e] LPC82xに対応した弊社オリジナルブートローダです。~ マイコンに備わったUSARTを経由してホストからマイコンボードのフラッシュROMへユーザプログラムを転送及び書き込んだり、書き込まれたユーザプログラムを実行するといった機能を持ちます。~ GCC Developer Liteにてソースプログラムからコンパイルでき、ユーザ自身による改造も可能です。~ ファイルの送受信にはXMODM-1Kプロトコルを使用します。 **基本仕様 [#r62ea0f7] ***コンパイル方法 [#kdc2554b] 弊社提供の[[GCC Developer Lite]]最新版のインストールコンポーネントとして「STM32F373でのみ使用」、もしくは「フルインストール」が選択されている必要があります。 ソースをダウンロードし適宜解凍し、GCC Developer Liteでソースを開き、コンパイルオプションにて「STM32F373 (Flash)」の設定リストを選択し、さらに最適化レベルを「-Os」にしてコンパイルします。コンパイル後に生成される.binファイルをISPやSWD等を介してフラッシュROMに書き込んだら準備完了です。 ***ソース及びコンパイル済みバイナリのダウンロード [#DOWNLOAD] #ref(LPC82x_BL_1.0.ZIP) バージョン: 1.0~ 公開日: 2015/?/? 更新内容:一般向けリリース ***メモリマップ [#fd1295e9] 本ブートローダはフラッシュROM上で動作するプログラムであり、一般のプログラムと何ら相違はありません。そのため、ブートローダ自身のサイズが大きいと、ユーザが使用できる領域が圧迫されてしまいます。~ 現在リリースしているバージョンでは占有フラッシュROM領域が3kbyte以下である前提とします。 #ref(bl_memmap.png,100%) ユーザが使用できるフラッシュROMの領域は、ブートローダの後ろ0x00000C00からフラッシュROMの最終アドレスまでとなります。 ***ユーザプログラム [#a1597f0a] ブートローダから実行を遷移させる事ができるユーザプログラムは、以下の条件を満たしていなければなりません。 -先頭アドレスが0x00000C00にオフセットしており、ベクタテーブルがその先頭アドレスより配置されている -0x00000000~0x00000BFFのフラッシュROM領域に対して書き込み操作を行わない GCCを使用している場合は、リンカスクリプトファイルにてROMとして予約しているアドレスを修正すれば大抵のプログラムは動作するはずですが、それでも動作しない場合は広範な修正が必要になる場合もあります。 ***注意事項 [#c853261b] -ブートローダ自身は単純なローダに過ぎませんので、GDB等のデバッガとの接続は考慮されていません。 **使用方法 [#d84bf868] ***ブートローダの動作フロー [#BOOTFLOW] #ref(SAM7BL_BOOT_FLOW.png,100%) ユーザプログラムへ実行が遷移するか、ブートローダがコマンドモードになるかの2つの状態に動作が分岐します。~ ユーザプログラムへ実行が遷移する前にユーザ自らの操作でコマンドモードに遷移させる場合は、起動直後の0.15秒以内に「!」を3回連続して受信する必要があります。ユーザプログラムが書き込まれていなければ、常にコマンドモードとなります。~ ユーザプログラムがユーザプログラムに実行が遷移している時のブートローダの条件を以下に示します。 -ソフトリセット~ ブートローダのコマンドモードへ遷移 -ハードリセット~ ユーザプログラムへ遷移 -WDTリセット~ ユーザプログラムへ遷移 -BODリセット~ ユーザプログラムへ遷移 ***コマンド [#sb3ccc22] [[SIMPLE TERM>GDL#STERM]]からのキー入力にて各種機能を実行します。 ****ヘルプ '?' [#k1c5df53] コマンドのリストを表示します。 >? LPC82x BL1.0 w:write e:erase d:dump g:go > ****書き込み 'w' [#ddb17d72] ホストからフラッシュROMへファイルを転送及び書き込みを行います。また、必要に応じてセクタイレースを行います。 >w 即時転送を待ち受ける状態となりますので、STERMから任意のファイルを選択しXMODEM-1Kプロトコルで転送を開始させます。~ 成功すればOK、失敗するとNGと表示されます。 >wCCCCCCCCC OK > 本コマンドはユーザプログラムの実行は行わず、処理が完了するとコマンドモードに戻ります。 ****実行 'g' [#u539eceb] フラッシュROMに書き込まれたユーザプログラムを実行します。 >g 実行可能なユーザプログラムでないと判断されると、 >g NG > というメッセージを表示してコマンドモードに戻ります。 ****メモリダンプ 'd' [#pa71dd4c] メモリを16進数でダンプ表示します。ブートローダ内で想定しているユーザープログラムが保存されているアドレスの先頭から表示します。~ [BS]で前ページ、その他のキーで次ページを表示し、[ESC]で終了します。 >d 00000C00:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000C10:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000C20:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000C30:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000C40:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000C50:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000C60:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000C70:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000C80:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000C90:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000CA0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000CB0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000CC0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000CD0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000CE0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00000CF0:FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ なお、MCUのメモリ領域を超えてダンプするとハードフォルトします。 ****消去 'e' [#a03e16d8] フラッシュROMのユーザプログラム領域を完全消去します。 >e OK >
« Prev
Next »
LPC82x Bootloader のバックアップ一覧
LPC82x Bootloader のバックアップソース(No. All)
1: 2014-12-27 (土) 15:05:49
takaboo
2: 2014-12-27 (土) 15:18:55
takaboo
3: 2014-12-27 (土) 19:14:45
takaboo
現: 2017-05-17 (水) 20:38:38
takaboo
Copyright© 1989,2024 BestTechnology Co.,Ltd.
メニュー
トップ
ニュース
お知らせ
新商品情報
更新情報
マニュアル類
技術情報
チュートリアル
FAQ
お問合せ
技術的なお問合せ
その他お問合せ
お見積り
ブログ
会社案内
ショッピング
ご利用案内
検索
カテゴリ 一覧
ロボットキット
Dynamixelシリーズ
マイコンボード
相撲ロボット
センサ
通信機器
お客様ページ