|
|
View previous topic :: View next topic |
Author |
Message |
dxrose86
Joined: 28 Feb 2009 Posts: 5 Location: Taunton Ma
|
ROM Tables on PIC184550 |
Posted: Sun Mar 01, 2009 4:20 pm |
|
|
Hello,
I am trying to develope a program that needs to use a group of tables of 200 characters per table. i want to store these in ROM due to ram limitations. When I compile only the first three out of six loaded. the remainder are ignored with NO ERROR MESSAGE.
the code looks like
Code: | const int redLinear[]=
{
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00.....
}
const int greenLinear[]=
{
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00.....
} |
and so on for 6 tables.
Only the first three are usable but the compiler ignores the last 3.
Any Ideas would be greatly appreciated
Dave _________________ Micro-guy |
|
|
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Sun Mar 01, 2009 5:20 pm |
|
|
Three things about 'const' arrays:
1. The compiler examines the arrays and if they have identical elements,
only the data for one array will be stored in ROM. One set of data will be
used for both arrays.
2. If an array is not referenced in your code, the compiler will not insert
the data into ROM.
3. If the array is accessed with constant values for the array indexes
(instead of a variable), the compiler may use MOVLW statements to
to load the array values, instead of putting the array into a table in ROM.
This is all done as part of optimizing (reducing) the ROM usage. |
|
|
|
|
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
|
Powered by phpBB © 2001, 2005 phpBB Group
|