Hi,
I'm trying to debugging the example E_Eeprom_xmc1_example_xmc1300 without success. When I start the debugger, I get an exception to the default handler ( b .) and I dont know why. What I'm doing wrong? I saw that the exception is comming when the software is trying to read the flash memory into the function XMC_FLASH_ReadBlocks:
void XMC_FLASH_ReadBlocks(uint32_t *address, uint32_t *data, uint32_t num_blocks)
{
uint32_t word;
uint32_t block;
XMC_ASSERT("XMC_FLASH_ReadBlocks: Starting address not aligned to Block",
((uint32_t)address & FLASH_BLOCK_ADDR_MASK) == 0U)
for (block = 0U; block < num_blocks; ++block)
{
for (word = 0U; word < XMC_FLASH_WORDS_PER_BLOCK; ++word)
{
*data = *address;
data++;
address++;
}
}
}
To be more exactly by the datatransfer von pointer *address to *data. It seems as the pointer would have a wrong address. Can help me anybody to solve this problem?
Attachment 4950
Attachment 4951
Attachment 4952
I would appreciate some help a lot.
Thank you
Pablo
I'm trying to debugging the example E_Eeprom_xmc1_example_xmc1300 without success. When I start the debugger, I get an exception to the default handler ( b .) and I dont know why. What I'm doing wrong? I saw that the exception is comming when the software is trying to read the flash memory into the function XMC_FLASH_ReadBlocks:
Quote:
void XMC_FLASH_ReadBlocks(uint32_t *address, uint32_t *data, uint32_t num_blocks)
{
uint32_t word;
uint32_t block;
XMC_ASSERT("XMC_FLASH_ReadBlocks: Starting address not aligned to Block",
((uint32_t)address & FLASH_BLOCK_ADDR_MASK) == 0U)
for (block = 0U; block < num_blocks; ++block)
{
for (word = 0U; word < XMC_FLASH_WORDS_PER_BLOCK; ++word)
{
*data = *address;
data++;
address++;
}
}
}
Attachment 4950
Attachment 4951
Attachment 4952
I would appreciate some help a lot.
Thank you
Pablo