Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Wake up from PowerDown of AT89C55WD

Status
Not open for further replies.

conkhicon

Advanced Member level 4
Joined
Aug 31, 2004
Messages
107
Helped
3
Reputation
6
Reaction score
0
Trophy points
1,296
Activity points
1,015
Hi all
I performed to enter on Power-down by set PCON.1=1 before setting level-Activated External Interrupts ITx and enable EXx.

clearWatchDog(); // Clear WatchDog
IT0 = 0; // Level_Activated Interrupt
EX0 = 1; // Enable External Interrupt
IT1 = 0; // Level_Activated Interrupt
EX1 = 1;
PCON |= 0x2;

And Interrupt Service:

void ex0_isr(void) interrupt 0
{
IE0 = 0; // Clear Flag EX0
EX0 = 0; // Disable Ext0.interrupt
IE1 = 0; // Clear Flag EX0
EX1 = 0; // Disable Ext1.interrupt
PCON &= 0xfd;
enableTimer0();
initSerial();
}

void ex1_isr(void) interrupt 2
{
IE0 = 0; // Clear Flag EX0
EX0 = 0; // Disable Ext0.interrupt
IE1 = 0; // Clear Flag EX0
EX1 = 0; // Disable Ext1.interrupt
PCON &= 0xfd;
enableTimer0();
initSerial();
}


But when My board's waked-up (arbitrary pulse from external Interrupt Pin) CPU still works properly, Pheripheral (Timer0,Serial...) doesn't work anyway
Even I reInitials them (see sourecode)

I don't know WHY?
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top