BluePillに対してブートローダを書き込む方法

最終更新日:2021年6月7日


2021年6月7日 説明文を補足しました。


ここではWindows環境でのBluePillに対してブートローダを書き込む方法を紹介しておきます。
Windows環境でも実現方法は幾つかあります。ここでは 本評価ボード と USB<->RS232Cコンバータ を上記のように接続し、ブートローダファイルをSTマイクロ社が提供するツールを利用して書き込む方法を紹介します。

事前に用意しておく物

『stm32flash.exe』はファーム書込用のツールです。https://sourceforge.net/projects/stm32flash/ からダウンロードできます。

『generic_boot20_pc13.bin』はブートローダのバイナリファイルです。https://github.com/rogerclarkmelbourne/STM32duino-bootloader/tree/master/binaries
から該当ファイルをダウンロードします。

手順ですが、

  1. デスクトップ等にフォルダを作成し、『stm32flash.exe』『generic_boot20_pc13.bin』を入れます。
  2. BluePillのブートpinのショットジャンパの位置を変更します。BOOT0のショートpinを1側に変更します。
    この作業を忘れると、コマンドラインに『Faild to init device.』と表示されて終了します。
    STM32miniの場合、BOOT0はUSBコネクタ側です。
  3. ケーブルを接続します。USBシリアル変換モジュールが自動認識されるはずです。その際にどのシリアルポートが割り付けられたか確認する必要があります。
  4. コマンドプロンプトを管理者モードで開きます。
  5. 『stm32flash.exe』をコマンドプロンプトにドラッグ&ドロップします。
  6. 続いてスペースを打ち込み、-w と打ち込みます。もう一度スペースを打ち込みます。
  7. 『generic_boot20_pc13.bin』をドラッグ&ドロップします。
  8. スペースを打ち込み、先ほど調べたCOMポート番号を打ち込みます。上記例では COM28と打ち込むことになります。
  9. 実行します。実行結果は以下の通りです。
  10. BootLoaderの書込に成功すると、BluePill単体でPCにUSB接続すると MapleSerial としてCOM番号が割付くはずです。


USBシリアル変換モジュールにはFTDI以外にも幾つかのchipがあります。CH340とかCP2102です。WindowsOS環境であれば、いずれのchipでも書き込めるようです。ただ、モジュール毎にpinアサインが異なりますのでその点は注意してください。


BluePillに搭載されているMPUchipはSTM32F103CBT6のはずです。このチップのFlashサイズはカタログ上64KBですが実際には128kBと云われています。この確認方法として、『stm32flash.exe』を用いて確認することが出来ます。『stm32flash.exe』はChipメーカ提供のツールという事も有り信用できるかと思います。
手順は コンソールにて stm32flash.exe COMxx と入力して実行することです。128kBだと云う事が確認出来ます。


HIDブートローダというのもあります。紹介記事に飛びます。


オブジェクト自体はベクター殿のストレージをお借りしています。

https://www.vector.co.jp/vpack/browse/person/an051501.html



免責事項

本ソフトウエアは、あなたに対して何も保証しません。本ソフトウエアの関係者(他の利用者も含む)は、あなたに対して一切責任を負いません。
あなたが、本ソフトウエアを利用(コンパイル後の再利用など全てを含む)する場合は、自己責任で行う必要があります。

本ソフトウエアの著作権はToolsBoxに帰属します。
本ソフトウエアをご利用の結果生じた損害について、ToolsBoxは一切責任を負いません。
ToolsBoxはコンテンツとして提供する全ての文章、画像等について、内容の合法性・正確性・安全性等、において最善の注意をし、作成していますが、保証するものではありません。
ToolsBoxはリンクをしている外部サイトについては、何ら保証しません。
ToolsBoxは事前の予告無く、本ソフトウエアの開発・提供を中止する可能性があります。

商標・登録商標

Microsoft、Windows、WindowsNTは米国Microsoft Corporationの米国およびその他の国における登録商標です。
Windows Vista、Windows XPは、米国Microsoft Corporation.の商品名称です。
LabVIEW、National Instruments、NI、ni.comはNational Instrumentsの登録商標です。
I2Cは、NXP Semiconductors社の登録商標です。
その他の企業名ならびに製品名は、それぞれの会社の商標もしくは登録商標です。
すべての商標および登録商標は、それぞれの所有者に帰属します。