アイドルモード8051で、ISRが呼び出さ得られない!

S

seemanta

Guest
こんにちは、
デバイス以前に私からのアドバイスに基づくに基づくAT89S52ポストを作成バッテリーを電源に、私は時計デジタルに私のモードのアイドルコードを持って追加の一部。

残念なことに、マイクロ後アイドル状態になるとそれがない目覚めていない'受信割り込みからRTCは、それは。

だから私は正しい文字をで作成したテストプログラムを処理するシングルと表¥示されます割り込みを_2液晶には、された処理を前提に基本的な私の表¥示される場合モード睡眠。

変更がなければアイドルモード、変更、#01"つまり、MOV形式PCON"を、それがうまく機能¥します。ただし、変更をアイドルモード、私のISRは行_2のいないスイッチを押すと私が手にヒットするとき。

ここにコードを行く:

コード:手紙EQU 30Hの組織0000H

LJMPはMAIN;割り込みベクタをバイパスする組織0013H; / _2 ISRの

LCALL INT1_ISR

のMOV PCONは、#01;バックアップした後アイドルモードにでGO割り込み

RETI命令組織0030H

メイン:

ACALLのLCD_INIT;初期化液晶

MOV形式のIE、#10000100B;有効INT1割り込み

SETB TCON.3

MOV形式の文字、#65;と'の初期化

のMOV PCONは、#01;アイドルモードにでGO

ここ:SJMPはこちらINT1_ISR:

LCALLのDELAY_20MSは、遅れがルーチンを呼び出します - デバウンシング鍵

;空の暗証STATUS.IFのunsetは、これはFALSE ALARM.IFのSET、当時のITはTRUE割り込み

定足数をP3.3、RETN

MOV形式、#00Hに

LCALL LCD_POS_CURSOR

MOV形式、手紙

LCALL LCD_SEND_DATA

ACALL LCD_BUSY_WAIT

株式会社レター

RETN:RetのDELAY_20MS:

MOV形式R1は、#46

H1は:MOV形式R2は、#200

水素:DJNZ R2は、水素

DJNZ R1は、H1は

Retの
 
問題はだ:
のMOV PCONは、#01;後でGOアイドルモードに戻る割り込み
RETI命令

は、CPUが取得にアイドル時に実行楽章01#Pcon、モードしたがって、RETI命令がされます実行される。

このしてください
組織0013H; / _2 ISRの
LCALL INT1_ISR
RETI命令

メイン:
ACALL LCD_INIT
MOV形式のIE、#10000100B
SETB TCON.3
MOV形式の文字、#65
ここ:NOP命令
のMOV PCON、#01
SJMPはこちら

 
ねえ、それが仕事!

<img src=¥"http://www.edaboard.com/images/smiles/icon_biggrin.gif¥" alt=¥"非常にハッピー¥" border=¥"0¥" />ありがとう!

〜Seemanta

 

Welcome to EDABoard.com

Sponsor

Back
Top