This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Large Lookup Table -- Can't Store in ROM?

Hi,

I'm wondering if I am doing something wrong here. I am trying to store an array for a large 256 byte look-up table.

I have a pretty small 8051 MCU of 8 KB flash memory (IROM), 256 bytes internal RAM (IRAM) and 256 bytes on-chip external RAM (XRAM).

Prior to adding this look-up table, my current build from Keil reports:

"Program Size: data=54.1 xdata=0 code=1984"

I take that to mean I am using 54 bytes of IRAM, 0 bytes of XRAM, and 1984 bytes of IROM?

Here is the variable declaration I am using:

code unsigned char CRC8LookupTable[256];

When I define the CRC8LookupTable and populate values, I get the Segment Too Large error.

If you use "code" doesn't that store the values in ROM, which I should have plenty of space for?

Is there something else I need to add to that variable declaration?

Thanks
-Tim

Parents Reply Children