View previous topic :: View next topic |
Author |
Message |
kometen
Joined: 12 Oct 2003 Posts: 13
|
memory problems 18F6720 |
Posted: Mon May 10, 2004 7:38 am |
|
|
After upgrading from version 3.142 to 3.190 I have problems
running my code. The problems seems to arise from these lines:
char telegramstosend[8] [3] [40];
#locate telegramstosend =0x0600
When I use the #locate line my program runs haywire. Without it
the programs seems to run well.
Since my array is 960 bytes is my problem then due to overwriting the bank limit of 255 bytes? And will I still have the problem if I use the array above the 255 limit?
Thanks in advance for any advice |
|
|
Neutone
Joined: 08 Sep 2003 Posts: 839 Location: Houston
|
|
Posted: Mon May 10, 2004 8:38 am |
|
|
What does the variable map look like? When you remove the #locate where does the variable go? You should be able to use arrays larger than 256 bytes. The code generated to access the array is larger and slower for arrays that span more than one bank but it still works. |
|
|
prwatCCS
Joined: 10 Dec 2003 Posts: 70 Location: West Sussex, UK
|
|
Posted: Mon May 10, 2004 9:51 am |
|
|
Have a look at my recent posts under topic v3.190 and 18F6621.
No promises - but your problem might be related. _________________ Peter Willis
Development Director
Howard Eaton Lighting Ltd UK |
|
|
kometen
Joined: 12 Oct 2003 Posts: 13
|
|
Posted: Tue May 11, 2004 1:21 am |
|
|
Thanks for your help.
When the #locate is used, then the array start adress is 0x052C
Best regards
Poul |
|
|
kometen
Joined: 12 Oct 2003 Posts: 13
|
|
Posted: Tue May 11, 2004 2:20 am |
|
|
Further to my last message:
I have tried also to run the program with a small allocation:
int16 msgreadtlgno[8];
#locate msgreadtlgno =0x390
Again my program go haywire.
Maybe there is a general problem with the use for the
#allocate directive.
Best regards
Poul Thomsen |
|
|
Haplo
Joined: 06 Sep 2003 Posts: 659 Location: Sydney, Australia
|
|
Posted: Tue May 11, 2004 2:52 am |
|
|
1.What chip are you using?
2.Look at the symbol map file (.SYM), is your array placed in the correct location? Check the location of ther variables as well.
3.Post your code if possible. |
|
|
|