ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

SAKURAボードの.net microframework対応の話つづき

2014-10-19 12:47:41 | Weblog
OSC 2014 Tokyoにいってきた!

実質、さっきの話のつづき、10月18日

オープンソースになったマイコン開発環境 .Net Micro Frameworkの紹介
-IoT時代の組み込みOSの主役

で、SAKURAボードの.net microframework対応の話メモメモ





株式会社デバイスドライバー

ロゴ変わる→マイクロソフトの気合の入れ方
.Net Micro Frameworkとは
・マイクロソフトリサーチが開発した組み込み用OS
・C,C++,アセンブラで記述
・オープンソース・ライセンスで公開
・SoC、業務アプリ
歴史
・時計の中にRSSで受け取って
・2006 Windows Vista Side Show
・2010年にオープンソース化
・2014年末に何か起こるかも!

本来はCE未満のプラットフォーム

アーキテクチャ

アプリ
Library:C#で書かれてる
CLR:逐次実行
PAL
HAL

OSとしての提供機能
・TinyCLR

ドライバとサービス
デバイスコントローラー
・GPIO
・I2C
デバイスドライバ

プラットフォームとアプリケーション
・自作ボードや未サポートボードに移植
  →CQ出版社の移植事例
・周辺ハードウェアを自作して動作
  →容易に接続可能.Net Gadgeteer

SDK VS PK
SDK:アプリ開発に必要なもの。アドイン
PK:移植用キット
  クロスコンパイラを用意

新プラットフォームへの移植
TinyBooter
TinyCLR直接実装
U-Boot、T-Monitor
→実際にはどのようにでも作ることが可能
PKが用意しているサポートテンプレートだと移植らく

移植前のチェック
・ターゲットプラットフォーム

コンパイル;こーどそーさりーLiteを使う
JTAG-ICEデバッガ

移植に必要な知識
・ARM ハーバードアーキテクチャ
  呪文を間違えると、IOができない
  →メモリマップの設計
・データシート、回路図を読むことが必要
  フリースケール

ソフトウェア環境とツール
・Visual Studio2012
・SDK8.0以上 Expressの場合あといれで
・.Net MicroFramework 4.3 SDK
・.Net MicroFramework 4.3 Porting Kit
・クロスコンパイラ
  ARM RVDS,KEIL MDK
  gcc CodeSourcery arm-2014.05-28
・開発環境
  Eclipse
・ソースコード
  7zipでWinMerge

ハードウェア環境とツール
・JTAG ICEまたはOpenOCD ICE
   ICEが必要
・ブートローダー開発環境
・評価ボード
・測定器、信号観測ツール

移植の主要作業
・かいはつ
 環境変数設定&クロス開発用ビルドサンプル
Scatter(りんかのすくりぷと)
手順
・Naitiveサンプルを動作させる
・TinyCLRの動作

InterOPの実装
・クリティカルな処理をCまたはアセンブラを記述して
 アプリケーションから呼び出す
・C#でAPIを記述、コードをC/C++、アセンブラで記述

ビルド・デバッグ
・ネイティブサンプル
   メモリ管理
   割り込み
   タイマー
   ドライバ
・TinyCLR
・TinyBooter

TinyCLRとアセンブリの実行動作

Native環境への移植、OS on OSの移植
Winsock・バークレーOSのマーシャリングとか

.Net Gadgeteerとは
  .Net MicroFrameworkの上の層
FEZ panda IoT Kit
がじぇったIoT入門キット
EnOceanIoT入門キット
この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 若松通商のIoT Kitについて、... | トップ | 「Ubuntu14.10とUbuntu Touch... »
最新の画像もっと見る

Weblog」カテゴリの最新記事