概論 ようこそ。 今回は組み込みプログラミングについてだ。このパートでは、組み込みプログラミングという非常に重要なサイクルに取り組み始める。 組み込みプログラミングという科目は巨大な科目だ。これをマスターするには何年もかかる。今回、君たちは全てを習得することはできないだろう。君たちは、ただスタートを切るだけだ。
●マイクロコントローラに焦点を当てる この講義の裏側には隠されたたくさんの魔法が存在するが、ここでは、特にマイクロコントローラのための小さなパッケージについて焦点を当てて述べていこう。 そのマイクロコントローラは、1ドルにも満たない安価なものだが、これは100万ものサイクルを一秒間に処理することができる。そして、デバイスと接続して信号を入力したり出力したりすることが可能だ。そしてそれこそが、プロジェクトにインテリジェンスを付与することになる。
図. マイクロコントローラ
●どうやってプログラミングするか 今回の講義では、それらの組み込みプログラミングの型についてと、どうやってプログラムするかということについて学ぶ。これはArduinoの事だと思ってもらって構わない。でも、Arduinoが一体何なのかを学び、それらの制限についても学ぶことになる。3Dプリンタの講義の時に、3Dプリンティングよりも多くを学んだのと同じように、これはArduinoについての講義ではない。君たちはArduinoについてよりももっと深く学ぶことになる。
図. Arduino Uno R3
●今回の課題 今回の課題ではマイクロコントローラのデータシートを読み込んでほしい。詳しくはは、またお話ししよう。 そして、その後には君たちの基板に何かさせるプログラムを書き込んでほしい。2回前の講義で、君たちは回路基板をデザインしただろ?今回はそれにプログラムを書き込んで、何か動作させるんだ。 つまり、例えばボタンの信号を読むとか、光をコントロールするとかだね。 また、後日の講義でどのように信号を入力するプログラムを書くかについてと、出力の仕方について説明する。通信についても説明するよ。
●膨大な領域の第一歩は、「改変」から 学ぶべきことは膨大だ。だから、今回の講義で全てを理解することはできないかもしれない。でも、君たちはスタートラインから一歩踏み出せれば、それでいい。 加えて、今回の課題で、僕は君たちに一からプログラムを全部書いてもらおうということは期待していない。僕が君たちにやって欲しいのは、単に付け加えるということだ。そして君たちが学び始めた印として、エキサイティングなプログラムに改変してほしい。 (つづく) 講義の目次は 【和訳版】FabAcademy 2016 からご覧ください。 ※この記事は FabAcademy 2016 におけるニール・ガーシェンフェルド教授(MIT)による講義動画をもとに作成しました。正確な訳ではないので間違っていたら指摘いただけるとありがたいです。