[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avr-gcc-list] Re: Larger than 64K memory sections

From: Parthasaradhi Nayani
Subject: Re: [avr-gcc-list] Re: Larger than 64K memory sections
Date: Thu, 27 Aug 2009 20:12:02 -0700 (PDT)

From: David Kelly <address@hidden>

>4 million bytes or bits? Most FLASH devices are sized by the bit.

It is 4M Bytes.

>No matter what you do you won't be able to say *MyUInt16Ptr = 0x1234;
>you will have to write a routine and use it something like this:

>u16_value = 0x1234;
>result = Write4MBFlash( (uint32_t)MyUint16Ptr, sizeof(uint16_t), &u16_value );

One advantage I found, using name spaces (sections) is, generating a hex file for initialised data, which can be downloaded through serial port.

>All the external SPI FLASH devices I have used are paged. One
>read/writes to a RAM buffer in the device then flush that buffer to a
>page in FLASH. IIRC the Atmel device I last used had 264 byte pages
>which served to complicate addressing if one insisted on using all 264
>bytes. Believe the designer's intent was that one use 256 bytes as a
>"sector" and the other 8 bytes for tracking usage, even linking to
>previous sector and next sector for a form of filesystem.

Never thought of this (using the extra 8 bytes for tracking/linking to other sectors)

>Atmel had a very useful appnote containing C routines for access to
>their DataFlash parts which helped a lot. I felt the need to heavily
>edit it for style and naming convention. Rearranged a bit, and deleted a
>lot that I didn't use. But it was a very good start.

Will check Atmel's site . Thank you.


start: 0000-00-00 end: 0000-00-00
reply via email to

[Prev in Thread] Current Thread [Next in Thread]