【Chofuino Cafe(5) 記録】

【写真と文 安部博文】

日時2016年4月29日(金)16:20~18:55
場所電通大 西11号館2階 ピクトラボのプレイルーム
参加者2名
技研後藤田一誠

1 内容
・今回は祝日にも拘らず、2名の学部一年生が集まった。
・一人は温度センサと距離センサを使い、もう一人は距離センサとサーボモーターを組み合わせて用いていた。
・途中、クラスとオブジェクト指向についての質問が出た。プログラミングの技術も電子工作には必要なので、うまく使いこなしてほしい。

2 Chofuino Cafeマスター・岸田さんからのメッセージ
GW中暇だ、電子工作したいみたいな16生へのアナウンス
今のところプログラミングは、厳密なこと抜きにイメージだけ掴んでもらっています。
厳密なことはそのうち大学の講義でやると思います。
が、イメージがなんとなくでも出来てるなら自習してもあんまり困らないかもしれません。
(自習で困る=イメージ出来ていないというわけではない)
なので暇でしたらプログラミングの文法などを勉強してみてください。
ArduinoはC++ベースですが、C++はCの文法を活かせます。
まずはCという入りで大丈夫です。
例えばそのうち同期からよく聞くことになるだろう「苦しんで覚えるC言語」http://9cguide.appspot.com/ (苦C)というサイトの内容だと、
ポインタの手前14章までなら多分わかる事ができると思います。

自習する時の注意としては主に2点
・main()はArduinoにはない
実は

```int main()
{
setup();
for(;;)
{
loop();
}
return 0;
}```
となってるだけです。詳しいことは `(インストールフォルダ)\Arduino\hardware\arduino\avr\cores\arduino\main.cpp` を見てください。

・標準入出力に相当するものがない
`printf()` とか `scanf()` でやり取りできる標準入出力はないです。Arduinoで実装する場合は大抵 `Serial.print()` とか `Serial.read()` とかで頑張って代用することになります。

Arduinoで使える関数はhttps://www.arduino.cc/en/Reference/HomePage や http://www.musashinodenpa.com/arduino/ref/ を参照してください。この2つのサイトはArduinoを使う限りお世話になると思います(前者に至っては公式だし・・・) (edited)