マイクロマウス製作二十四日目


こんにちは。

実はこのごろ、アールティでは、Pi:Co Classicについてのお問い合わせ、ご注文を多数頂いております。
ありがとうございます。

当社では、新入社員の研修に、Pi:Co Classicの製作、プログラミング、大会出場という課題を設けています。
研修課題としてのPi:Co Classicは、ハードについてもソフトについても、

「できた!」「動いた!」

という明確なアチーブメントに富み、
研修に臨む本人のさらなる探究心を刺激させてくれます。
私のような素人でも、ご覧のように、楽しみながら電子工作に関する技術、知識やプログラミングを学ぶことができるキットとなっております^^

Pi:Co Classicについてのお問い合わせ、ご注文は随時受け付けておりますので、
お気軽にこちらから。
また、マイクロマウスを使った研修については、こちらにアツい記事もございます。

いやー、Pi:Coちゃん(仮名)の兄弟姉妹がみなさんの元で組み立てられ、
愛され、成長するのを想像すると嬉しいですね^^

さて、

今日のマイクロマウス研修は、昨日の発展。
さらにさらにプログラムをわかりやすく管理できるようにします。

ヘッダファイル(拡張子「.h」)ソースファイル(拡張子「.c」)を用意し、
ヘッダファイルをソースファイルにインクルードします。

…まるでわかったみたいに説明してますが、正直まだ言葉で説明するのはちょっと苦手です…。
ですが、のり先生の説明が、着実に前より理解できる^^

あと、ときどき佐倉さんにも聞いたりします。
頼れる…
R0011027

今日とても勉強になったのは、
int a;
という、変数の宣言についてです。

サーキットモードのゴール後のアピールとして使っていたナイトライダー。
今までwhile文で無限ループさせていたのですが、せっかく昨日for文が書けたので、
for文を使って一定の回数で終わるようにしようと思いました!

「for文の中にfor文を書いてもいいですか?」
などと質問をしながら書いてみたのがこれ。
↓ ↓ ↓

LEDのミス

これをビルドしてPi:Coちゃん(仮名)のスイッチを押すと、
ピカピカっと1往復だけナイトライダーをやって終了。

「あれ!?15回って書いてるのに~~!!!」

と、のり先生に泣きつくと、

for(i = 0; i < 15;  i++)
の処理を一回やって、繰り返しに入ろうとするころには、
for(i = 0;  i < 500000;  i++)により、 iの値が50000になっていて、当然15よりも大きいですから、処理が終了してしまうというわけでした。 (笑われて悔しい…。) なるほど、そりゃそうだ~><

ということで、修正しました。
↓ ↓ ↓

LED正解

このように書き直して、無事15往復のナイトライダー成功です♪
複数の変数を使うときは、「,」で区切って、それぞれを分けることができるんですね~^^

(ちなみに、この「i」については、社内が紛糾!!「integer」の頭文字派と「iterator」の頭文字派がいるみたい。
ちなみに、佐倉さんは「iterator」、そのほかのyukiさん、のりさん、川上さんは「integer」。
世代なのか?…失礼ですか?w
うーん、みなさんはどちらですか?)

毎日毎日、課題を与えられて、
「さてどうやって一人で解決してのり先生を驚かせてやろうか…w」
と、ニヤニヤするのがとても楽しいです(笑)
(毎回わからなくて立ち止まって泣きつくのが関の山。。。)

いやはや、プログラムはやはり難しい。
なかなかピンとこない。
でも、個人的に、サンプルプログラムの存在にとても助けられてます。
サンプルプログラムからカンニング(一部引用したり、どうやってるか確認する)して、
自分がやりたいことをプログラムするにはどうやって書いたらいいか真似したりして考えています。
エラーが出たときも、サンプルプログラムではどうやって書いているかをまず確認できますので、便利。
Pi:Co Classic、初心者にとってちょうどいいキットだなあと思います。
(何だか宣伝くさいですが、本当ですw)

そんなPi:Coちゃん(仮名)、
さーて、どうやって改造しようかな…(わくわく)

R0011031


Posted in Pi:Co Classic製作記