IAR Embedded Workbench を使用したブートローダの構築の実例

IAR Embedded Workbenchを使用したブートローダの構築の実例

ソフトウェアが複雑になるにつれ、出荷後に発生する問題に対処するため、ファームウェアはフィールドで自分自身を書き換えできるように設計されるようになりました。ファームウェアの書き換えはブートローダが行います。この記事では、IAR Embedded Workbenchと評価キットSTM32F20ZG-SKを使用してブートローダを構築する方法や問題点について解説します。

ブートローダに要求される機能は様々で、設計の実際について議論することは難しいと言えます。書き換えのためのデータを取り込む方法ひとつをとっても様々で、マイコンの周辺デバイスのUSB、同じく周辺デバイスのEthernetを使用したTCP/IP、または古めかしいRS232Cなどだったりします。ブートローダはいろいろな場面で必要になる機能なので、設計を始める前に、使用するマイコンで使えるブートローダのサンプルがすでに作られていないかどうか、マイコンメーカに確かめてみることをお勧めします。もしそれが手に入るなら、ブートローダの構築の手間をかなり省くことができます。


選択するアーキテクチャによっても微妙な差があります。例えば、デバイスがARMかCortex-M3かでリセットベクタが異なります。またデバイスメーカにより、ベクタテーブルを再配置できるもの・できないものがあります。ここでは、話を簡単にするために、ひとつのデバイスとその評価キットを実例とすることにします。


評価キットSTM32F20ZG-SKはCotex-M3デバイスを搭載しています。 この記事ではこのボードが手元にあり、デバイスにプロジェクトをダウンロードする方法をすでに理解していて、EWARMのデバッガC-SPYのマクロファイルシステムが、デバッガをスタートする前にどのようにレジスタの値などを操作することができるかなどについて知識があることを前提とします。

ドキュメント(pdf)

© IAR Systems 1995-2016 - All rights reserved.