TinyCLR OS ファームウェアビルド手順

環境構築して、デジタル出力の次は、デジタル入力…が普通だと思いますが、めっちゃポーティング欲が出てきているので、そっちへ向かいましょう!

kotobank.jp

やり方は、Porting TinyCLRに簡潔に書かれています。これにそってやりたいと思います。

TinyCLRをクローン

githubに挙がっているTinyCLRをローカルにcloneします。

git clone https://github.com/ghi-electronics/TinyCLR-Ports

f:id:matsujirushix:20170730215839p:plain

GCCをインストー

GNU ARM Embedded ToolchainからGCCをダウンロード、インストールします。

今回は、gcc-arm-none-eabi-6-2017-q2-update-win32.exeをダウンロードして、起動することでインストールします。

f:id:matsujirushix:20170730220529p:plain

デフォルトだと、C:\Program Files (x86)\GNU Tools ARM Embedded\6 2017-q2-update フォルダにインストールされます。

f:id:matsujirushix:20170730220850p:plain

CMSISを配置

ARM.CMSIS.4.3.0.packをダウンロードして、拡張子を.zipに変更、中身をTinyCLRのCMSIS配下に配置します。

ARM.CMSIS.4.3.0.packには、このように入っているので、 f:id:matsujirushix:20170730221311p:plain

C:\TinyCLR\TinyCLR-Ports\CMSIS に配置します。 f:id:matsujirushix:20170730221752p:plain

TinyCLR Coreライブラリを配置

TinyCLR-PortsreleasesからTinyCLR_Core.0.5.0.zipをダウンロード、中身をTinyCLRのCore配下に配置します。

f:id:matsujirushix:20170730222158p:plain

よっしゃ、ビルドするぞー

コマンドプロンプトを立ち上げて、gcc環境変数設定バッチファイルを起動します。

"C:\Program Files (x86)\GNU Tools ARM Embedded\6 2017-q2-update\bin\gccvar.bat"

f:id:matsujirushix:20170730222418p:plain

次に、カレントディレクトリをクローンしたところに変更。

cd C:\TinyCLR\TinyCLR-Ports

そして、ビルドのバッチファイルを起動!

build.bat FEZ

f:id:matsujirushix:20170730222854p:plain

引数はFEZ, G30, G80, FEZCerberus, Netduino3, Quailが指定できます。 詳しくはbuild.batの中身を見てください。

おおーー!!

f:id:matsujirushix:20170730223030p:plain

最後に

NETMFと比べて、非常に簡単。特にハマるところは無いでしょう。

それにしてもビルドが速い。Coreの部分が事前にビルドされているから当たり前といえばそうですけど。

LLILUMの何時間もビルドした結果、エラーとか体感していると幸福感ありますw