[Homepage][BBS][Blog][YouTube][asablo]

エアーバリアブルBBS
新エアーバリアブルBBS
初めにお読み下さい Please read first ホームページ ブログ YouTube 過去ログ倉庫
16f88 INTCONの設定
何年か前にPICのプログラムを始めました。数年ブランクがありましたが、ぼけ防止がてら、PICによるプログラムを再開しました。
MPLAB IDE V8.84 HI-TECH C V9.83という古典的ともいえる何年か前の環境でこつこつやってます。
そこで、お聞きしたいのは、16F88のINTCONの設定です。外部割り込みを使ったプログラムを書こうと思い、少しずつ書いていますが、INTCONの設定で、「INTE=0とINTF=0」が、 undefined identifieのエラーになってしまいます。LEGACYの16F87と16F88のヘッダーファイルを見てみると、INTCONのなかに、INTEとINTFの項目があるのですが。
下記のようなプログラムで、初期設定で、躓いています。設定方法等間違っているのかもしれませんので、アドバスお願いできればありがたいです。

/************************************
16F88 HI-TECH C v.9.83
gaiub-arikomi
2014-10-26
************************************/
#define _LEGACY_HEADERS
#include "pic.h"
#include "stdlib.h"
#define _XTAL_FREQ 4000000

__CONFIG(CCPRB3 & DEBUGDIS & LVPDIS & BOREN & MCLRDIS & PWRTEN & WDTDIS & INTIO);


void main(){
OSCCON = 0b0110000; // 内蔵OSC 4MHz

TRISA = 0b00000001; // RA0(AN0)入力
TRISB = 0b00000001; //
PORTA = 0b00000000;
PORTB = 0b00000000;

GIE = 1;// 割込み全体の許可
INTF = 0;
INTE=0;

}

よろしくお願いします。
  • mabo
  • 2014/10/26 (Sun) 12:00:01
Re: 16f88 INTCONの設定
maboさん
はじめまして、nです。

これらの昔の名前は、INT0IF、INT0IEだったようです。

//INTF = 0;
INT0IF=0;
//INTE=0;
INT0IE=0;
  • n
  • 2014/10/26 (Sun) 14:23:58
Re:【解決】 16f88 INTCONの設定
nさん、早速のご回答ありがとうございます。ご指摘の通り変更しましたら、無事、通過いたしました。

あらだめて、「include」内のヘッダーファイルを眺めましたら、ありました。

#define RBIF--------------INTCON, 0
#define INT0IF------------INTCON, 1
#define TMR0IF------------INTCON, 2
#define RBIE--------------INTCON, 3
#define INT0IE------------INTCON, 4
#define TMR0IE------------INTCON, 5
#define PEIE--------------INTCON, 6
#define GIE---------------INTCON, 7

もうちょとよく調べるとよかったのでしょうが、今までは、探し方がわかりませんでした。

ありがとうございました。
  • mabo
  • 2014/10/26 (Sun) 23:45:43

返信フォーム






プレビュー (投稿前に内容を確認)