【概要】
14ピンのPIC16F630/676を動かしてみるための評価ボードを製作
してみました。
構成は下図のようになっていて、PIC16F676を主に評価できるようになって
いますが、PIC16F630も評価できます。
【仕様】
基本的な入出力要素は下記となっています。
項目 機能内容 その他 電源 外部より7Vから9Vの
DC電源入力電池またはACアダプタを想定
緑色発光ダイオードによる電源ランプアナログ入力 温度センサ入力
0℃から50℃の範囲
電圧入力
0から5Vの範囲温度センサを基板に実装(RA0)
可変抵抗により変えられる(RA1)ディジタル入力 押しボタンスイッチ
2個実装(RA2とRA3)1個はリセット兼用(RA3) ディジタル出力 赤色発光ダイオード
6個実装
液晶表示器
16桁2行の表示器同じポート(RC0-5)共用のため両方が
同時に動作する
液晶接続は下記
RS(RC4) STB(RC5) DB(RC0-3)外部クロック 32.768kHzのクリスタル
振動子を実装ICSP ICSP用のコネクタを実装 ICD2を想定したモジュラージャック
【回路図と外観】
以上を前提にしたPIC16F630/676評価基板の回路は下図のようになっています。
実際に組み立てた基板は写真のようになっています。評価用なのでゆったりとした
サイズに組み立てました。
ICSPですので、フラットパッケージタイプのPICでも可能ですが、今回試作は
DIPタイプで作りました。
回路図(拡大できます)
外観写真(拡大できます)
【プログラム例】
この評価基板を使って作成したサンプルプログラムです。
《例題1》 発光ダイオード点滅プログラム
6個の発光ダイオードの点滅をするプログラムです。
すべてアセンブラを記述したプログラムです。
・SW1がオフの時は全点灯、全消灯を0.5秒間隔で繰り返します。
・SW1がオンの時は、奇数ビット点灯と偶数ビット点灯を0.5秒間隔で繰り返します。
注意することは初期化の部分で、下記のようにクロックのキャリブレーションと
コンパレータの設定が必要です。
ソースファイル全体は下記でダウンロードできます。MPLABでプロジェクトを
作成してお使いください。
★ 例題1 ソースファイルとHEXファイル(PIC16F630用)
ソースファイルとHEXファイル(PIC16F676用)
《例題2》 アナログ入力と液晶表示器の制御
2つのアナログ入力を実行し、液晶表示器にメッセージでデータを表示します。
この例題はCCSのCコンパイラを使ってC言語で作成しています。
・温度センサの現在値を0.5秒間隔で入力して、0から50℃の値に変換して
表示する。 表示は、「Ondo= xxxx DegC」と表示する。
浮動小数点の変換がメモリ制限で困難なため、表示は10進数4桁で表示。
「2350 ℃」という表示は23.50℃という意味。
・可変抵抗による電圧を0.5秒間隔で入力して電圧値として表示する。
表示は「Volt= xxxx mV」と表示する。
専用の液晶表示器ライブラリを作成しています。下記でソースファイルを
ダウンロードできます。MPLABでプロジェクトを作成してお使いください。
★ 例題2 ソースファイルとHEXファイル(PIC16F676用)
《例題3》 タイマ1の割込みを使った例題
例題2と同じ機能ですが、0.5秒間隔をタイマ1を使って作成し、割込みで起動
しています。
★ 例題3 ソースファイルとHEXファイル(PIC16F676用)