Tool/software: Code Composer Studio
Hi team,
Our customer is getting data abort when trying to interface 32MB Nor flash to the controller TMS570LS3137. The customer was able to read and write the first 16MB data but as soon as he tries to read data beyond 16MB (address = 0x61000000), he gets data abort.
Here is the code:
*( (uint16_t *)base_addr + 0x555 ) = 0x00AA; /* write unlock cycle 1 */
*( (uint16_t *)base_addr + 0x2AA ) = 0x0055; /* write unlock cycle 2 */
*( (uint16_t *)base_addr + 0x555) = 0x00A0; /* write program setup command */
*( (uint16_t *)base_addr + 1) = data1; /* write data to be programmed */
Read_back_data = *( (uint16_t *)base_addr + 1);
*( (uint16_t *)base_addr + 0x555 ) = 0x00AA; /* write unlock cycle 1 */
*( (uint16_t *)base_addr + 0x2AA ) = 0x0055; /* write unlock cycle 2 */
*( (uint16_t *)base_addr + 0x555) = 0x00A0; /* write program setup command */
*( (uint16_t *)base_addr + 0x800001) = data2; /* write data to be programmed */
Read_back_data = *( (uint16_t *)base_addr + 0x800001);
The base address is 0x6000000, and the customer get data abort at last statement
Hoping for your assistance to help our customer.
Regards,
Carlo