【.NET nanoFramework】ことはじめ
前々から、「マイコンのプログラムも C# で書ければいいのに…」と思っていました。
最近の電子工作では、ArduinoやESP32-WROOM-32などのマイコンボードでArduino IDEを使って書く が定番でしたので、C/C++に疎かった身としては辛いものがありました。
そんな中2021年、.NETFoundationによってサポートされた「.NET nanoFramework」が登場しました。このフレームワークによって、遂にC# を使って組込みプログラムをかけるようになりました!
.NET nanoFrameworkがどのようなものか、公式情報と照らして理解しつつ、実際に使えるようにセットアップすることを目標にして、まずはことはじめとしてざっくりとした概要を掴んでいきましょう。
1 : .NET nanoFrameworkって何?
まずは公式サイトの紹介文を確認しましょう。
大体の内容を要約すると、
①制約のある組込みデバイス向けのアプリケーションの作成を可能にするプラットフォーム
②使い慣れたVisualStudioと.NET C# の知識を使って、低レベルのことは気にせずにコードを作成できる
③.NET CLRの縮小版が含まれていて、.NET基本クラスライブラリやIoTコアからのコード再利用を可能にする、UWPに含まれる一般的なAPIを使える。
といった感じのようです。
推しポイントとしては、
強力なVisualStudioを使って気軽に組込み開発ができる
な感じがします。
2:使えるマイコンボードの種類は?
以下に示すマイコンボードが、.NET nanoFrameworkで使えるようです。
・ESP32-WROOM-32
・ESP-WROVER-KIT
・OrgPal PalThree
・NUCLEO64_F091RC
・STM32F429I_DISCOVERY
・STM32F769I_DISCOVERY
・TI CC1352R1_LAUNCHXL
・TI CC3220SF_LAUNCHXL
・NETDUINO3_WIFI
など…
他にも、コミュニティメンバーによって提供されているものがあるようですが、国内でよく使用されているのは「ESP32系」かなと思われます。
3:次回予告
今回は、.NET nanoFrameworkのホームページから、このフレームワークの特徴を軽く確認しましました。.NETを用いた開発経験のある方からすると、C# で組込みデバイス向けにコードを書けるのは知識を使えるのでありがたいかな?と思われます。
この記事を書いた時点で環境構築とLチカまで完了してますので、次回は「環境構築編」と称してまとめたいと思います。
少しでも.NET nanoFrameworkに興味を持っていただけたならば幸いです。ここまでお読みいただきありがとうございました。
付録:.NET Micro Frameworkはどこにいったん?
実は「.NET Micro Framework」と呼ばれるものがありました。
Twitterでの会話になりますが、R.I.P.と言われていますので終わってしまったもののようです。