フリーのCコンパイラでPIC(PIC16F88)を動かそう

はじめに

 PICを開発する言語としてアセンブラ、BASIC、Cなどがあります。アセンブラの開発はMicrochip Technology Inc.よりフリーで提供されている MPLABがあります。しかしながら他の言語となると、有料であればCCS社HI-TECHなどのCコンパイラがあ りますが、値段が2万5千〜11万円と個人で使うには割高な感じがします。フリーのCコンパイラもありますが、容量の制限があったり、自分が使いたいPICがサポートされていない場合もよく あります。結局、PICを開発するにはMPLABを使用している人が多いのではないかと思われます。

 どこかにPIC開発できるCコンパイラがあるかと探していたら、SDCC:Small Device C CompilerでCからアセンブラに変換し、 gputilsでPICの書き込み用ファイルを作成するというものがあり、これを使ってみたところ簡単にPIC16F88を動かすことができました。 ここではWindows XPでPIC16F88を動かすまでの流れ(SDCCの使い方)を説明します。ちなみにPIC16F88は秋月電子で1個230円で売っています。

SDCCとgputilsのインストール

 まずSDCCgputilsのページに行ってWindows用の実行ファイル(exe)をダウンロードし てきます。ここではSDCCは2007年3月10日、gputilsは0.13.4のバージョンを使用しています。

 SDCCとgputilsのインストールはセットアップファイルをそれぞれ実行して行います。HDD容量に問題がなければフルインストールをしておくといいでしょう。インストールの最後にパス を設定するかと聞かれますので、はいを選択してください(SDCC、gputilsの両方とも)。インストールの詳細を見たい人はここを見てください。さらに複数 のユーザアカウントで使用したい場合はここを見てください。

PICのプログラムのサンプルを作成

 インストールまで終わったら、Cのプログラムを作りましょう。プログラムの作り方は「スタート」→「すべてのプログラム」→「アクセサリ」でメモ帳を開きます。メモ帳 上でプログラムを作成し、できたら、適当なファイル名(ここではcドライブのtestフォルダにtest.c)で保存します(ファイルの種類を『すべてのファイル』にしてから保存します。)。 よくわからない人はここを見てください。プロ グラムはこのようなものにしました。このサンプルではPIC16F88を内部クロックの8MHzで動作させ、RA0を0.5秒間隔でHigh→Lowと繰り返すものとなっています。 MCLRとかはOFFにしていますので、PICの電源に電圧を与えて、RA0に抵抗(5Vなら330Ω)とLEDとGNDを接続すれば、LEDの点滅の確認ができます。

PICのプログラムをコンパイルする。

 PICのプログラムをコンパイルして書込ファイル(Hex)を作成するには、スタート」→「すべてのプログラム」→「アクセサリ」でコマンドプロンプトを開きます。ここでは、先ほどの プログラムファイル(test.c)をcドライブのtestフォルダに保存した場合について説明します。詳しい説明が欲しい人はここを見てください。

 コマンドプロンプトが立ち上がったら、まず現在のドライブをチェックします。もし、現在のドライブがd:\などと出ている場合は以下のコマンドを打ってからEnterキーを押してくだ さい。

c:

続いて、c:\のtestフォルダにアクセスするためにcdコマンドを使用します。以下のようにしてください。

cd c:\test

このcdコマンドはWindowsの操作でいうとフォルダを開くコマンドとなっています。一つ上のフォルダに移動したい場合は cd .. とします。

これまでで、コマンドプロンプトが下記のようになっているか確認をします。

c:\test>

もしなっていなければ、もういちど確認をしてください。

上記までうまくいけば、実際にプログラムをコンパイルをします。コンパイルをするには下記のようにしてください。

sdcc -mpic14 -p16f88 test.c

これはtest.cファイルを14ビットのPICであるPIC16F88でコンパイルするといった命令です。

コンパイルが無事終わると下記メッセージが出てきます。

message: using default linker script "C:\Program Files\gputils\lkr\16f88.lkr"

あとはコンパイルして作成されたPIC書込用ファイル(test.hex)をPICプログラマでPIC16F88をプログラミングすれば終了です。 秋月電子のPICプログラマVer.4で確認しています。

戻る


連絡先 田中基大まで gs400e@  (@以下は welcome.mech.nagasaki-u.ac.jp です。)

2007年3月12日初版
最終更新日2007年03月13日

このHPの内容を無断で転載することを禁じます。
リンクについてはご自由にどうぞ。連絡をしても良い人は連絡をしていただけると幸いです。