SSブログ

弾数カウンタ (その5) [PIC]

PICのコンフィグレーションワードについてです。
と言うかHITEC-Cでのと言うことにもなります。

PICのプログラムは今まではほとんどが、アセンブラで書いてました。
#TK-80みたいにさらにハンドアセンブルなんてことはなくなりましたが。
が、今回はC言語で書くことにしました。一般的に高級な言語を使うと、冗長性が高くなるので、小さいプログラムでも大きなメモリ容量が必要になります。しかし、今回使用した16F88は巨大なメモリエリアを持っているので、C言語を使っても問題なくプログラムできます。

でもって、Hitec-Cでのコンフィグレーションワードです。

今回は以下のように設定しています。

__CONFIG(
UNPROTECT & CCPRB3 & DEBUGDIS & LVPDIS & BORDIS & PWRTEN & WDTDIS & INTCLK & MCLRDIS
);
__CONFIG(
FCMDIS & IESODIS
);

このおまじないは、ROMエリアのプロテクトはなしで、CCPはRB3ポートを使い、デバッグ機能は使わず、ブラウンアウトリセットは使わず、低電圧プログラムは行わず、パワーアップタイマは使用して、ウォッチドッグタイマは使用しないで、内部クロックを使い、リセットは使わないことと、
クロック喪失検出しない、内部クロックで外部クロックを補完しないことを宣言しています。
機能設定値説明
コードプロテクトPROTECTROMに書かれた内容をプログラマから参照できないようにガードする
コードプロテクトUNPROTECTROMの内容をプログラマからさん賞できないようにしない
キャプチャー・コンパレータ・PWMCCPRB0キャプチャー・コンパレータ・PWMをRB0ポートで使用する。
キャプチャー・コンパレータ・PWMCCPRB3キャプチャー・コンパレータ・PWMをRB3ポートで使用する。
インサーキットデバッグDEBUGENPicKit2等を利用してターゲット基板上でのデバッグを可能にする。ただし、ホストとの通信用に3本のPIN(MCLR,RB6,RB7)を使用する
インサーキットデバッグDEBUGDISインサーキットデバッグを使用しない。RB6,RB7が使用可能。
フラッシュメモリアクセスUNPROTECT使用可能
フラッシュメモリアクセスWP0多分ポート1だけ使用可能
フラッシュメモリアクセスWP1多分ポート0だけ使用可能
フラッシュメモリアクセスWPA使用できない
データEEメモリUNPROTECT使用可能
データEEメモリCPD使用不可
低電圧プログラムLVPEN使用可能
低電圧プログラムLVPDIS使用不可
ブラウンアウトリセットBOREN電源電圧が、だんだん低くなってきて動作が不安定になる前にリセットを発行
ブラウンアウトリセットBORDIS電源電圧が、だんだん低くなってきて動作が不安定になる前にリセットを発行しない
パワーアップタイマトPWRDTEN電源投入時に安定するまでタイマを使用して動作を止める。
パワーアップタイマトPWRDTDIS電源投入時に安定するまでタイマを使用して動作を止めずに即座に起動する。
ウォッチドッグタイマWDTENプログラムが定期的に割り込みを発行しないとリセットする。
ウォッチドッグタイマWDTDISプログラムが定期的に割り込みを発行しなくてもリセットしない。
クロック設定RCCLK外部部RCクロックを利用し、OSC1ピンにクロックを出力する
クロック設定RCIO外部RCクロックを利用し、RA6,RA7は入出力に使用する
クロック設定INTCLK内部RCクロックを利用し、OSC1にクロックを出力
クロック設定RCIO内部RCクロックを利用し、RA6,RA7はIOに使用する
クロック設定EC外部RCクロックソースを利用する。
クロック設定HS高速水晶、クリスタル発振子を使う
クロック設定XT外部水晶発振子を利用する。
クロック設定LP低電力水晶発振子を利用する。


の内、機能を設定したいほうの定義を宣言します。






nice!(0)  コメント(0) 

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。