Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


AT91SAM7SE512 heap in SDRAM and variable allo

Posted by gulash on August 18, 2010
I have a following problem: I'm devoloping device based on Atmel AT91SAM7SE512 CPU. It has SDRAM connected with 16-bit wide data bus. I want to put heap in this SDRAM. I've used heap_2.c but I experienced memory leaks when using vPortFree() - it looked like this function returnred more memory that was previously allocated. Then I started using heap_3.c andehence - malloc. I use Rowley CrossWorks in current version. First I had to manually initialize heap because initializastion in provided startup file happened before SDRAM controller initialization. It seemd to be working but recently I've experienced some weird effects. When I call subroutine from a task it looks like variables in that subroutine ale allocated under one address and used by the fallowing code with different address. The difference is few words but leads to serious memory leaks. In other words variable is allocated under eg. 0x20010000 and later referenced as 0x2000FFFC. Can someone give me any suggestion wehere to look for a soulution ?

RE: AT91SAM7SE512 heap in SDRAM and variable allo

Posted by Dave on August 18, 2010
I would look at your hardware configuration. Especially where the memory controller is initialized to get around your first problem. Very doubtful this is a FreeRTOS problem.

[ Back to the top ]    [ About FreeRTOS ]    [ Privacy ]    [ Sitemap ]    [ ]

Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

FreeRTOS v10.2.0 is available for immediate download. MIT licensed, and including RISC-V and ARMv8-M (Cortex-M33) demos.

NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


FreeRTOS and other embedded software careers at AWS.

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Cadence Tensilica Cortes

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers





STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner