Bootloaderとは、メインのプログラムをメインメモリーに取り込む短い起動プログラムのことで、簡単には、PICkit の代わりをするプログラムと考えてよいでしょう。 Bootloaderは、PCからUSB経由で、本来目的とするユーザーが作成したプログラムのHEXコードを受け取り、をPICのROMエリアに自分自身で書き込んでいきます。
Bootloader を利用するPICのメモリには、右図のようにプログラムが書き込まれます。
つまり、PCで作成した、ユーザープログラムをPICに書き込むときは、SWを押しながらUSBプラグをPCに接続します。
Bootloaderプログラム本体は、PICkitなどのプログラマーであらかじめPICに書き込む必要がありますが、Bootloaderが書き込まれたPICにユーザープログラムを書き込むには、PICkitなどのプログラマーは、不要です。
ブートローダーを使用して、PICにプログラムを書き込むには、以下の手順に従います。
ブートローダーを使用して、PICにプログラムを書き込むには、以下の手順に従います。
MPLAB IPE を起動し、Bootloader HEX ファイル「BL16F1459wIntlOsc.hex」を PICkit3 でPICにブートローダー本体のコードを書き込みます。
*注意*
一度、書き込めは、2度目からは、ブートローダを同じICに再書き込みする必要はありません。 ユーザーソフトを何度書きなおしても、ブートローダープログラムは、変更されないため、新規にPIC ICを購入したときに一度たけ、実施する作業です。
MPLAB IPE は、MPLAB Xのインストール時に同時にインストールされる書き込みツールです。
BL16F1459wIntlOsc.hex |
HIDBootloaderWindows.zip を解凍し、PCアプリ HIDBootloader.exe や dll ファイルが入っているフォルダーごとPCのハードディスクに保存します。
PCアプリは、PICに書き込まれたブートローダー本体 (BL16F1459wIntlOsc.hex)とUSB経由で通信しながら、PCに保存されているHEX形式のユーザーコードをPICに送り込む役目をします。PICのROMへの書き込み動作自体は、PICに書き込まれている ブートローダー本体が行います。
プロジェクト HIDBootloaderWindows.zip |
PCアプリ HIDBootloader.exe を起動します。
「Device not detected」というメッセージが表示されます。
PICのpin 4に接続されているSWを押しながら、USBケーブルをPCのUSBソケットに挿入します。
ケーブル挿入後にSWを離すと、
「Device attached」と表示されます。
左上の「Import Firmeware Image」ボタンをクリックします。「Open Hex File」ダイアログが開くので、PICに書き込むユーザープログラムのHEXファイルを HIDBootLoaderに読み込みます。
読み込みに成功すると読み込んだファイル名が表示され、「Program/Verify」ボタンがアクティブになります。
ユーザープログラムのHEXファイルは、
Project Folder\dist\default\production
に保存されています
「Program/Verify」ボタンをクリックすると書き込みが開始され,
PICの書き込みに成功すると「Completed Successfully」と表示されます。)
「Reset Device」ボタンをクリックするか、USBケーブルを外すとDevice Detachedと表示されブートローダが切り離されます。