Page 2 of 2

Re: Stack Overflows Under Emulation

PostPosted: Fri Jul 07, 2006 11:01 am
by aek
1) That did sound like a bad vector.

2) 500us is a bit fast. Assuming a 4MHz xtal, that means that upu are allowing the execution of 500 instructions between timer ticks. We recommend a minimum of 1,000 instruction cycles between timer ticks, and a range of 2,000-10,000 is standard operating procedure.

3) 1, 2, 5 or 20 tasks shouldn't have any impact on your continued crashing, except that as the number of tasks grows, the maximum possible time that Salvo disables interrupts (see the portpicc.h header file for OSDi(), etc.) will increase, and it may ultimately exceed your system tick period. Salvo can/will recover from this (with its lost ticks feature), but it's better to call OSTimer() every 2,000 ticks or longer.

4) I still think that your ISR is not properly coded (even though it is now located properly). Please post it.

------------------


Re: Stack Overflows Under Emulation

PostPosted: Thu Feb 26, 2009 1:24 am
by firas
quote:
Originally posted by jmark1m:
Using Salvo 3.2.3 pro (latest) and HiTech PICC (latest) I have my program compiling and linking. I am using a PIC17C756A with PICE-MC emulator.

When starting the program under emulation the message I get is stack overflow. I have removed everything out of the two tasks I am switching between. They are now basically empty while loops with an OSYield in them. My salvocfg.h file is below,



Re: Stack Overflows Under Emulation

PostPosted: Fri Feb 27, 2009 4:10 am
by aek
quote:
HiTech PICC (latest)
As in PICC PRO?

We do not support the PRO line of compilers.

------------------