I am working on development using a SAM3U2C in Keil and have run into a very strange problem. I need to store approx. a 13kb file in RAM.
I use malloc to dynamically allocate this amount of memory (the size is approximate but variable):
downloadImage = (U8 *) malloc(downloadSize);
This works with no problem but when i actually attempt to write to a small (but consistent) range of addresses within this memory, the chip stops functioning. After some debugging I found that the memory allocated is from: 0x20000190 - 0x2000346c.
The area that crashes the system when written to starts at address: 0x2000034c.
Incidentally, if i try to initialize the entire range to 0 using calloc, the system crashes. This leads me to believe that writing anything to this problematic range will crash the system. I can't find documentation on any addresses that might be problematic but as I'm using malloc I can't control which address range I am receiving.
I would appreciate any help on this issue and will give any additional information requested.
Discussion around product based on ARM Cortex M3 core.
1 post • Page 1 of 1
Who is online
Users browsing this forum: Baidu [Spider] and 2 guests