??? 06/12/05 18:37 Read: times |
#94736 - Possible reasons for unwanted reset Responding to: ???'s previous message |
Dear Vishal,
Anytime your program starts at 0000H the microcomputer will appear to have reset. This can happen if there is a jump to that location. Other than a direct jump, perhaps the stack pointer which normally points to a RAM location containing the address to jump to on return of a subroutine or interrupt could have been inadvertently changed. This can easily happen if you use the PUSH and POP instructions improperly. You might also look to see if you are using RET in place of RETI to return from an interrupt routine. If your program uses too many variables or RAM locations and/or if you nest subroutines too deeply, then your stack pointer can be incremented beyond the amount of RAM available for it and "wrap" back to 00h. I assume that you have eliminated all hardware reasons for the reset and that the apparent reset is occuring only due to a software problem. Hope you find your problem. Regards, Bert |
Topic | Author | Date |
Program causing reset! | 01/01/70 00:00 | |
one way | 01/01/70 00:00 | |
Actually I want to avoid reset. | 01/01/70 00:00 | |
Lets look into the crystal ball! | 01/01/70 00:00 | |
Schematic & code | 01/01/70 00:00 | |
I am not asking you for a solution... | 01/01/70 00:00 | |
Program causing Reset![]() | 01/01/70 00:00 | |
No "main loop" | 01/01/70 00:00 | |
Different author -- Sorry | 01/01/70 00:00 | |
Possible reasons for unwanted reset | 01/01/70 00:00 |