![見出し画像](https://assets.st-note.com/production/uploads/images/135748900/rectangle_large_type_2_f586d946611b4750cf8d090754f6e931.png?width=1200)
micro:bit始めました
ある、作りたいものが出来たので、micro:bitを始めました。
とにかく手軽で安いことが一番ですが、嘘でも1msの分解能を得られることを目指したいので、リアルタイムが苦手な、Linux系は外しました。
GUIはパソコンにゆだねたいので、パソコンとつながることも視野にいれました。
振動センサーと、白熱電球をON/OFFしたいという要求があり、簡単にIOを接続できることも必要です。
接続用の基板や細かなパーツは少し高いですが、振動センサー(スイッチ)くらいは、ハードウェアの工作(半田付け)なしにつながりそうなので、最近のヘタレな私には持ってこいです。
ただ、振動センサーは本体基板にも内蔵されており、設置のことを考えなければ、それで十分、いや、むしろ外付けの振動センサーは2値出力、いわゆる振動スイッチなので、内蔵の加速度センサーの方が優秀です。
表面に並んだLEDも、さしずめ白熱電球の代わりにできます。
プログラマーのためのmicro:bit開発プラットフォーム入門
開発は、ブラウザーを使ってオンラインで行ないます。
サイトは「MakeCode(メイクコード)」と呼ばれ、Microsoftで運営されています。正確には「Microsoft MakeCode for micro:bit」と呼ばれます。
Microsoftアカウント、もしくは、Googleアカウントによるログインを促されるが、嫌なら特にログインしなくても良いと思います。私はまだログインしたことはありません。
プログラミングは文字のソースコードではなく、ブロックと呼ばれ、グラフィカルにパズルを組み合わせるように、プログラミングが出来ます。私は少し前にScratchをかじりましたが、基本的なことはScratchと同じでした。Scratchの経験が役に立ちました。
プログラミングは他にも、JavaScript、Pythonで行なえるそうです。
(プログラムの保存)
作成したプログラムは、ブラウザを終了しても保存されています。
ログインしているとクラウドに、していないとローカルなクッキーに保存されるとのことでしたが・・
ログインしていなくても外界に共有することができ、そのときにはURLが付くので、共有すると少なくともクラウドに保存されているはずです。
作成したプログラムは、ローカルにダウンロードすることもでき、その際拡張子はHEXとなります。
(電源)
電源はUSBから給電できます。電池でも駆動できます。
プログラムはパソコン上でシミュレーションできます。シミュレーションでかなりのことがデバッグできると思います。
ネットにある情報が豊富で、分かりやすいと思いました。
■スイッチエデュケーション(スイッチサイエンス)
micro:bit(マイクロビット) とは
micro:bitをはじめよう (switch-education.com)
https://learn.switch-education.com/microbit-tutorial/
■MakeCode(メイクコード)
Microsoft MakeCode for micro:bit (microbit.org)
https://makecode.microbit.org/
プログラマーのためのmicro:bit実行環境入門
マルチタスクで動きます。「ずっと」と呼ばれる無限ループが、複数個設けられます。
「最初だけ」という初期化ルーチンが1個あります。
タスクには優先順位がなく、リアルタイムOSとは言えません。プリエンティブではないという話です。
無限ループの繰り返し時には、20msの隙間が空けられるとのことです。
内部は6msごとのタイマー割込みが動いるそうです。
起動時から1ms単位で増え続けるタイマーがあります。
イベントも存在しています。
通常のタスクより優先度の高そうな、「バックグラウンド」があるそうです。
■最初の一歩
https://makecode.microbit.org/_5dzTAg4WHVWr