i am using a PIC18F4680 (65k ROM 3k RAM) and need to work with large float arrays for my program.
Everything below 128 elements works fine whether i store the array in the ram or in the rom.
If there are more than 128 elements in the array the debugger jumps into the Standard Header file for the PIC18F4680 and stops there (no compile error - program uses 14% of ROM 5% of RAM).
I think it has something to do with exceeding the bank register. As far as i know array variables are stored in the first 128 bytes of bank one. Is there a way to change bank register or how do i deal with large arrays?
Thanks for your help!
Ttelmah Guest
Posted: Wed Oct 14, 2009 9:33 am
Sounds like a problem with the debugger....
CCS, happily handles arrays with more than 128 float elements on the 18 chips. You don't have to do anything.
Make sure you have the #nolist option 'remmed' out in the header file for the chip you are using (this makes CCS not put visible code in the listing for their internal 'library' routines). It sounds as if you are actually calling one of their routines, to handle the bank switching, and the code for this is absent from the stuff your debugger 'knows' about.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum