MSP430用ブートローダの作成

テクニカル・ノート 13285

アーキテクチャ:

MSP430

コンポーネント:

general

更新日:

2018/09/04 7:18

はじめに

このテクニカルノートでは、MSP430用のブートローダーを作成する方法について説明します。

一般的な提案

情報

MSP430用のブートローダとアプリケーションを作る方法はいくつかあります。IAR Embedded Workbench for MSP430 では、次の2つのプロジェクトを作成することをお勧めしています:

ブートローダ用のプロジェクトとアプリケーション用のプロジェクト

後で、ブートローダとアプリケーションはリンカの --image_input オプションを使用して、ダウンロードするためにマージすることができます。

アプリケーションの中にブートローダーコードをマージするには、 下記例のように、--image_input と -g リンカオプションを使用します、:

-gbootsymbol
--image_input=$PROJ_DIR$\Debug\Exe\Bootloader.bin,bootsymbol,BOOTLOADER,1

リンカ設定ファイル (.xcl) には、以下を追加します:

-Z(CONST)BOOTLOADER=addr1-addr2

アプリケーションをビルドすると、ブートローダを含む 、(デバッグ情報を含まない)1つの出力ファイルが作成されます。

背景

Oブートローダとアプリケーションのプロジェクトを別々する理由の1つは、 コンパイラが"サポート関数" uses (例えば "?DivMod16u"、"?ShiftLeft32")を使用した場合、これらの関数は簡単に手動で配置または制御できないためです。

追加情報

Help -> IAR Linker and Library Reference Guide 中の "--image_input" についての記載を参照してください。

このオプションは、Project -> Options -> Linker -> Config の"Raw binary image" オプションに対応します。

デバッグ情報をロードするには、Project -> Options -> Debugger -> Images -> Download extra image (Debug info only) を使用してください。

代替案(デバッグ)

適用

シミュレータまたはFETデバッガドライバでのデバッグ。

背景

両ドライバーともに、追加のイメージをダウンロードすることができます。(これは、次のステップで使用されます)。

手順

  • (上記のように) ブートローダ用のプロジェクトと、アプリケーション用のプロジェクトをビルドします。
  • リンク時にはプロジェクトを"マージ"しない でください!
  • アプリケーション用プロジェクトをアクティブプロジェクトとします。
  • Project -> Options -> Debugger -> Images -> Download extra image によって(アプリケーション・プロジェクトに)ブートローダプロジェクトを追加します。
  • 重要 - "Debug info only" チェックボックスに チェックしていないことを確認してください。 (すなわち 上記'一般的な提案'とは逆です。)
  • ダウンロードしてください。
  • 追加の考慮事項
    • 2つの main関数(ブートローダとアプリケーションに)があるため、"run to main" を無効にしてください。
    • (Tools -> Options ダイアログ中の) "Stack plug in" を無効にしてください。
    • デバッグ時 - デバッグ時に、View > 'Images'ウィンドウを利用し、(コンテキストメニューを使用して)どちらのイメージからのデバッグ情報も制御が可能です。


全ての製品名は、それぞれの所有者の商標または登録商標です

申し訳ございませんが、弊社サイトではInternet Explorerをサポートしていません。サイトをより快適にご利用いただくために、Chrome、Edge、Firefoxなどの最新ブラウザをお使いいただきますようお願いいたします。