BROKEN's Advanced Vehicle Laboratory

プロジェクト / 小型ヒューマノイド2003 for ROBO-ONE

4.3 基礎実験:delay関数を用いたLEDの点滅

これから実験基板を使って最も簡単でそれっぽい実験に入ります。その手始めに、PICが正しく動作していることを確認するためのプログラムを作成します。アセンブリ言語でプログラムを書いても良いのですが、C言語のほうが圧倒的に開発効率が良いので、組み込み関数が豊富なCSS-PCM(CSS社製ミドルレンジPIC用Cコンパイラ)を使用します。

まず手始めに、最も簡単そうなLEDの点滅実験です。

ソースコード ( pio_1.c )

最近はプログラムの設計をするのにフローチャートは使われなくなってしまったようです。私も、フローチャートなんて書いたことがないのですが、専門学校や大学の授業ではいまだにフローチャートを使っているのでしょうか? この実験のプログラム程度なら設計図も要らないとは思うのですが、とりあえず状態遷移図を示します。

図 LEDの状態遷移図

LEDがOffの状態からスタートして、Offの状態で1秒待ってからOnの状態に切り替わります。Onの状態で1秒待ってからOffの状態に・・・ということを延々と続ける、それだけのプログラムです。PortBのRB0に接続されたLEDが1秒おきに点滅すれば成功です。

△目次 / 4.4 基礎実験:ステートマシンという考え方 >>