#norelated
* PIC16F648A の __CONFIG [#ce270ead]

PIC16F648Aのアセンブラでプログラムをするときに __CONFIGの情報が少なかったので自分なりにまとめてみた。

 ; PIC16F648A の __CONFIG について
 ;
 ; プログラムメモリ・コードプロテクション
 ; _CP_ON : CP1 = 0 / CP0 = 1 ==> 0200h から 07FFh までプロテクションあり
 ; _CP_OFF : CP1 = 1 / CP0 = 1 ==> プロテクションなし
 ;
 ; EEPROMコードプロテクション
 ; _DATA_CP_ON : CPD = 0 ==> EEPROM書き込み禁止
 ; _DATA_CP_OFF : CPD = 1 ==> コードプロテクション解除
 ;
 ; 低電圧プログラミング指定
 ; _LVP_ON : LVP = 1 ==> RB4/PGMポートをプログラミング指示ポートに使用し、低電圧プログラミングが可能
 ; _LVP_OFF : LVP = 0 ==> RB4/PGMはデジタルI/Oポートとして使用し、プログラミングにはMCLRポートを使用する
 ;
 ; 低電圧リセット指定
 ; _BOREN_ON : BODEN = 1 ==> 低電圧リセットを使用する 
 ; _BOREN_OFF : BODEN = 0 ==> 低電圧リセットを使用しない 
 ;
 ; マスタ・クリアピン指定
 ; _MCLRE_ON : MCLRE = 1 ==> RA5/MCLRピンをマスタ・クリア(MCLR)として使用する
 ; _MCLRE_OFF : MCLRE = 0 ==> RA5/MCLRピンをデジタルI/Oポートとして使用する。この場合、MCLRは内部でVDDに接続される。
 ;
 ; パワーアップタイマ指定
 ; _PWRTE_ON : PWRTE = 0 ==> パワーアップタイマを使用する
 ; _PWRTE_OFF : PWRTE = 1 ==> パワーアップタイマを使用しない
 ;
 ; ウォッチドッグタイマ指定
 ; _WDT_ON : WDTE = 1 ==> ウォッチドッグタイマを使用する
 ; _WDT_OFF : WDTE = 0 ==> ウォッチドッグタイマを使用しない
 ;
 ; 発振器指定
 ; _RC_OSC_CLKOUT : FOSC2 = 1 / FOSC1 = 1 / FOSC0 = 1 ==> ER(External Resistor) : RA6/OSC2/CLKOUT を CLKOUT として使用し、RA7/OSC1/CLKIN に抵抗器を接続して内部発振器を使用
 ; _RC_OSC_NOCLKOUT : FOSC2 = 1 / FOSC1 = 1 / FOSC0 = 0 ==> ER(External Resistor) : RA6/OSC2/CLKOUT を I/O として使用し、 RA7/OSC1/CLKIN に抵抗器を接続して内部発振器を使用
 ; _INTOSC_OSC_CLKOUT : FOSC2 = 1 / FOSC1 = 0 / FOSC0 = 1 ==> INTRC(Internal 4MHz OSC) : RA6/OSC2/CLKOUT を CLKOUT として使用し、RA7/OSC1/CLKIN を I/O として使用
 ; _INTOSC_OSC_NOCLKOUT : FOSC2 = 1 / FOSC1 = 0 / FOSC0 = 0 ==> INTRC(Internal 4MHz OSC) : RA6/OSC2/CLKOUT および RA7/OSC1/CLKIN を I/O として使用
 ; _EXTCLK_OSC : FOSC2 = 0 / FOSC1 = 1 / FOSC0 = 1 ==> EC(External Clock In) : RA6/OSC2/CLKOUT を I/Oとして使用し、RA7/OSC1/CLKINをCLKIN として使用
 ; _HS_OSC : FOSC2 = 0 / FOSC1 = 1 / FOSC0 = 0 ==> HS発振器(4MHz-20MHz) : RA6/OSC2/CLKOUT および RA7/OSC1/CLKIN を使用 ----
 ; _XT_OSC : FOSC2 = 0 / FOSC1 = 0 / FOSC0 = 1 ==> XT発振器(4MHz以下) : RA6/OSC2/CLKOUT および RA7/OSC1/CLKIN を使用
 ; _LP_OSC : FOSC2 = 0 / FOSC1 = 0 / FOSC0 = 0 ==> LP発振器(200KHz以下) : RA6/OSC2/CLKOUT および RA7/OSC1/CLKIN を使用 

で、こんな感じで使う。

 __CONFIG _CP_OFF & _DATA_CP_OFF & _LVP_OFF & _BOREN_OFF & _MCLRE_OFF & _PWRTE_OFF & _WDT_OFF & _HS_OSC

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS