You are here

LEDの点灯

dsPIC-DEV-3013RLを評価ボードとして、dsPIC30F3013のプログラム例を紹介します。

ポート構成

dsPIC-DEV-3013RLがソフトウェア的にどのように見えるかを以下に示します。以下の内容は、dspicdev3013rl.hの一部です。SW?はタクトスイッチ、LED?は発光ダイオード、CLCD?はキャラクタ液晶ディスプレイのポート設定を示します。スイッチやLEDなどがどのポートに接続されているかや、そのポートの入出力方向の設定や、プルアップなどの設定を行うSFRの名前などを示しています。

dsPIC-DEV-3013RLのソフトウェア的なポート構成

最初のプログラム

文字表示はありませんが、MCUの世界での"Hello World"のプログラムに相当する、スイッチとLEDを利用したとても基本的なプログラムを作ってみましょう。

最初にC30に用意されているMCUごとのヘッダーファイルp30f3013.hをインクルードします。このヘッダーファイルは、利用するMCUに対応した各PICチップ固有のSFRなどの構成を記述したものになっています。C30を利用する場合には、とにかく最初の行に記載すると考えてよいでしょう。dspicdev3013rl.hは、前述のようにdsPIC-DEV-3013RL固有の入出力構成を定義したものとなっています。

コンフィギュレーションビットの設定は、_FOSC(), _FWDT(), _FBORPOR(), _FGS()の各ディレクティブ(最初の下線は1文字)で行います。

デジタルの入出力ピンの入出力方向は、TRISレジスタで設定します。TRISレジスタは、リセット時には1(入力)に設定されているので、LED用に出力として利用するポートのTRISビットを0に設定し、出力とします。

最後に、forによる無限ループで、スイッチの値を読んでそれをLEDに出力しています。スイッチもLEDもアクティブロー(0側がON)です。したがって、スイッチは、押されていないときは1, 押されたときは0, LEDは、1が出力されると消灯、0が出力されると点灯となります。

以上で、簡単ではありますが、dsPIC30F3013の立派なプログラムが出来上がりました。 :-)

開発ソフト: 
チップファミリー: 
MCUチップ: 
技術: