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

Using 4MB of flash memory with ADUC824

Hi!

I'm desperate! I have a ADuC824 with 4 MB of flash memory attached using the 824's feature of being able to access upto 16MB of external memory.

I'm trying to use the flash as external memory. However I cannot get out of the 64K XDATA limit. Even using the examples and using far I cannot write/read more than 64K.

What I need is a way of creating a pointer to 4MB of XDATA. If is use "char XDATA *BASE_ADDR" then I only get to use 64K and "far *BASE_ADDR" doesn't work.

Can anyone help?

All the best

Andrew Manning

Parents
  • Hi!

    The example is fine but it doesn't show how to access the 16MB of memory. Ideally I'd like to create an array of 4MB but the following line:-

    char far ADDR[0x3FFFFF];

    Gives the warning

    warning C219: Long constant truncated to int

    which I presume won't work.

    Any suggesstion please?

    All the best

    Andrew Manning

Reply
  • Hi!

    The example is fine but it doesn't show how to access the 16MB of memory. Ideally I'd like to create an array of 4MB but the following line:-

    char far ADDR[0x3FFFFF];

    Gives the warning

    warning C219: Long constant truncated to int

    which I presume won't work.

    Any suggesstion please?

    All the best

    Andrew Manning

Children