Reasons for Bus Error when using IntFlash Processor Expert component?

cancel
Showing results for 
Search instead for 
Did you mean: 

Reasons for Bus Error when using IntFlash Processor Expert component?

537 Views
xscaler
Contributor I

When using IntFlash component with the configuration showed, I get BusErrors when using communication

using the SynchroSerial component, I've checked the Wait in RAM option, so there shouldn't be any Bus Errors. The error

happens everytime I use the application with debugger, but only seldom times when is running standalone (i'm catching

all resets in the application at startup)

config.png

I'm using CodeWarrior 10.3 with  Processor Expert for MCU Version 10.0.0  Build: S_RT2_b1248-1334

Labels (1)
Tags (4)
0 Kudos
1 Reply

169 Views
marek_neuzil
NXP Employee
NXP Employee

Hello,

When you program a flash memory you must ensure that the block of the flash memory is not accessed by any MCU device (CPU, DMA and so on). When you program a flash memory block where the interrupt table (or the interrupt routine) is placed and an interrupt is invoked the BusError occur because you program the same block of memory as it is access by CPU (access to vector table and/or interrupt routine). You must ensure that no interrupt is invoked, e.g. disable all interrupts by Cpu_DisableInt method.

See also the Flash memory configuration - number of Flash memory blocks that are available for the MCU derivative you are using.

Note: When you use UART with DMA the DMA cannot access the flash memory block during execution of write/erase operation (it causes the bus error too).

Best Regards,

Marek Neuzil

0 Kudos