top of page
  • Linkedin
  • GitHub
  • Qiitan
  • Facebook
  • Instagram
  • icon
  • Youtube
  • Twitter

ファームウェア更新の手法

25/3/9

執筆者:

Hiroshi Okawa

組込み機器では専用ライターが一般的ですが...

組込み機器のMCUのファームウェアを書き換える方法はいくつかありますね。

よく利用されるのは


  • 専用ライターでデバッグ端子を使って書き換え

  • PCとUSBで接続して、PCアプリを使って書き換える


というやつでしょうか。

専用ライターはMCUメーカーだったり、サードパーティーから販売されています。

これ、意外と高価でして、5〜10万円強もします。

でも、開発・製造現場で使うものとしては許容できる価格帯ですね。


しかし、市場で不具合や機能アップのためにファームウェアを変更するとしたらどうでしょう?

サービスマンが携帯したり、ユーザーにお願いするには上記の手法は使いづらいです。


そこでUSBメモリを使ってファームウェアを書き換える手法をご紹介します。

MCUにブートローダを内蔵しておき、それはUSBドライバ、USB-MSCミドルウェア、ファイルシステム、内蔵フラッシュ書込み処理を搭載しています。


USBメモリ内にモトローラSレコードなどを入れてき、それを内蔵フラッシュに書き込みます。


ブートローダの動きは


  • 通常はメインプログラムへジャンプ

  • アップデート時はアップデートプログラムへジャンプ


という感じにしています。

ローダというよりは、プログラムセレクタというのが動作的には近いですね。


CPUのアーキテクチャによりますが、最近のMCUならおおよそこの方式が使えます。


STマイクロのSTM32F4シリーズ、NXPの比較的新しいLPCシリーズ、ルネサスのRX111で実績があります。


もっと詳細に解説した記事はこちらです。

https://qiita.com/tunaingot/items/e15fda5c979faf47be25

最新ニュース

25/12/24

SMF再生アプリをアップデート

プレイリスト対応など、やっとプレイヤーらしく

25/11/28

Final Cut Pro導入

Motionも一緒に導入しないとダメですね

25/11/7

USBデバイスデスクリプションの定義

開発したUSBデバイスの消費電流の値を定義する方法

bottom of page