Open Map File ( Project → Options → Output → Browse Info ). Search for 0x20000000 . Nothing should be there except __initial_sp . Your code is writing to it via a wild pointer.

Keil µVision is an IDE that integrates all the tools necessary for embedded software development into a single interface. It is widely recognized for its robust support of the ARM Cortex-M family and legacy 8051 architectures, making it a versatile choice for everything from simple educational projects to complex industrial automation. Key Components of the Keil Toolchain

Set a breakpoint just before the fault, step through assembly. You spot a STR instruction trying to write to 0x20000000 — wait, that's the start of RAM, reserved for vector table. Bingo.

Keil uVision is a popular integrated development environment (IDE) used for designing, testing, and debugging embedded systems. The IDE is developed by ARM, a leading semiconductor company, and is widely used by engineers and developers for creating and testing software applications for microcontrollers and other embedded systems. In this paper, we will discuss the features, benefits, and applications of Keil uVision.