ブートローダを作成するまでの手順
ロボット(QX-001R3J)に使われているマイコンと同等の Arduino Leonardo 用のブートローダを作成します。
作業環境
Windows 10 Pro (バージョン 21H1)
必要なものをダウンロード
ソースコード
・Arduinoソースコード ArduinoCore-avr-1.8.3.zip
・LUFAソースコード (version 111009) LUFA-111009.zip
ビルド環境
・WinAVR (version 20100110) WinAVR-20100110-install.exe
・msys パッチファイル msys-1.0-vista64.zip
ビルド環境作成
ソースコードのビルドには MAC環境で CrossPack 20100115 を導入して行われています。
ここではWindows上で同等の環境を用意して作成します。
ダウンロードした WinAVR-20100110-install.exe を実行し、ウイザードに従ってインストールを完了させます。
インストール先や設定は変更せずにデフォルトのままでインストールすることをお勧めします。
インストール場所を変更する場合はスペースを含まない英数のみのフォルダへインストールする必要があります。
又、Windows8.1以降のOSでは make が正常に実行できない為、合わせて msys-1.0-vista64.zip を解凍し、解凍された msys-1.0.dll を C:\WinAVR-20100110\utils\bin へ上書きします。(重要)
ブートローダソースの準備
作業するフォルダを用意し、ダウンロードした Arduino と LUFA の各ソースを下記の様に解凍します。
ここでは 作業フォルダ C:\MyWork\bootloader を作り解凍します。
構成を修正
Arduino Leonardo のブートローダは ArduinoCore-avr-1.8.3\bootloaders\caterina に入っています。
まずはこのフォルダへ移動します。
この中の Makefile ファイルをテキストエディタで開き、130行目でLUFAへの相対パスをしている所(LUFA_PATH)を下記の様に修正します。
LUFA_PATH = ../../../lufa-LUFA-111009
ブートローダをビルドする
ビルドの実行には、コマンドプロンプトを使用します。
コマンドプロンプトは 「Windowsキー」を押す → 「cmd」と入力 → 「Enter」を押すことで簡単に開きます。
コマンドプロンプトが表示したら、下記を入力して makefile があるフォルダへ移動します。
cd /d C:\MyWork\bootloader\ArduinoCore-avr-1.8.3\bootloaders\caterina
次に Arduino Leonardo で使われている ベンダーID(VID)とプロダクトID(PID)を引数に指定して make を実行します。
make VID=0x2341 PID=0x0036
makeが終わると下記の様に end で止まり、ビルドが完了します。
フォルダを確認すると Caterina.hex ファイルが作成されています。
Caterina.hex がマイコンへ書き込むブートローダになります。
コメント