I use lpc812M101 to simulator debug , i found the error during debug/run is
*** error 65: access violation at 0x40048080 : no 'read' permission *** error 65: access violation at 0x40048080 : no 'write' permission *** error 65: access violation at 0x40048040 : no 'write' permission *** error 65: access violation at 0x40048044 : no 'write' permission *** error 65: access violation at 0x40048044 : no 'read' permission *** error 65: access violation at 0x40048044 : no 'read' permission *** error 65: access violation at 0x40048044 : no 'read' permission *** error 65: access violation at 0x40048044 : no 'read' permission ...
I have try add MAP.ini
MAP 0x40048000,0x40048400 read write exec
it Has to solve the original problem but more out of the new problems
i run before main() in system_LPC8xx.c has loop in
void SystemInit (void) { ...
#if ((MAINCLKSEL_Val & 0x03) == 3) /* Main Clock is PLL Out */ LPC_SYSCON->SYSPLLCTRL = SYSPLLCTRL_Val; LPC_SYSCON->PDRUNCFG &= ~(1 << 7); /* Power-up SYSPLL */ while (!(LPC_SYSCON->SYSPLLSTAT & 0x01)) __NOP(); /* Wait Until PLL Locked */ #endif
... }
Error 65 - Your chip is not supported.. This topic has been covered over and over here, it's got to be the first thing that shows up in a basic Google search.
See the real problem here is that the simulator doesn't support the underlying hardware, enabling access to the memory isn't going to help much if your code spins around waiting for some bit that's never going to change.
Either pick some generic chip that has support, or just stop touching peripherals, or use real hardware.
1. how can i know which generic chip that has support ?
i had search keil web find this
http://www.keil.com/boards2/nxp/lpc812lpcxpresso/#/eula-container
is it not support too?
2. my problem is different about this ?
*** Error 65: Access violation at 0x00000004 : No 'write' permission
if same, i add MAP is ture Solution ?
thanks u !!
2 The simulator creates a list of addresses for hw it emulates, it errors when you go outside this list, so you can catch failures. You adding addresss to this list doesn't magically add support for anything, it just stops faulting, and probably always returns zero.
1 You don't mention what verison of uVision you use. For uV4 they had a webpage for each supported part indicating if simulation way supported and for what peripherals. If you don't use peripherals and just use core functionality, it really shouldn't matter. The SystemInit() code shouldn't need to touch much of anything.
Better yet jut buy a $10 board and debug on real hw.
µVISION DEBUGGER support software simulation of Cortex-M Devices only for this
http://www.keil.com/support/docs/3726.htm