Using the additional 16 / 32kB of RAM on LPC175x/6x MCUs

Topics that are related to specific development boards (mbed, LPCXpresso, Embedded Artists, Olimex, Coridium, StarterKit, NGX Technologies, EzSBC etc)

Using the additional 16 / 32kB of RAM on LPC175x/6x MCUs

Postby cfbsoftware » Sun Jan 27, 2013 7:10 am

LPC175x/6x MCUs with 32kB of more of SRAM are different from other LPC1xxx MCUs in that the SRAM is split into two separate blocks - CPU SRAM and AHB SRAM. The CPU SRAM is intended for general use and the AHB SRAM is used by the USB and Ethernet features of the MCU. However, if you are not using either of these features in your application you can use the additional RAM for your own purposes.

When you use the default Astrobe Linker options your application will only use the 32kB of CPU SRAM. You can use the extra AHB SRAM for dynamic memory (Oberon POINTER variables) by changing the Heap Start and Heap Limit settings on the Linker options. Because this frees up CPU RAM you can then use more / larger global and local variables in your application.

To demonstrate this run the attached example program on an LPC175x/6x MCU. Run it the first time with the default Linker Option settings and then run it again using the Heap Start / Heap Limit values for your MCU as shown in the header comments.
You do not have the required permissions to view the files attached to this post.
cfbsoftware
Site Admin
 
Posts: 294
Joined: Fri Dec 31, 2010 12:30 pm

Re: Using the additional 16 / 32kB of RAM on LPC175x/6x MCUs

Postby Pinckney » Mon May 01, 2017 4:53 pm

Perfect thanks for this cbsoft. Does it need any updates or anything?
Pinckney
 
Posts: 1
Joined: Thu Apr 27, 2017 11:27 am

Re: Using the additional 16 / 32kB of RAM on LPC175x/6x MCUs

Postby cfbsoftware » Wed May 03, 2017 12:10 pm

The ExtraRAM examples have since been included in the in the General examples of the standard distribution of Astrobe for Cortex-M3 and M4. They are the ones that you should use now.
cfbsoftware
Site Admin
 
Posts: 294
Joined: Fri Dec 31, 2010 12:30 pm


Return to Development Boards

cron