We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Load "C:\\Keil\\C51\\Examples\\Chipcon\\RF\\halRFtest\\halRFtest_433" *** error 65: access violation at I:0x80 : no 'write' permission
616: INT_SETFLAG(INUM_TIMER0,INT_CLR); C:0x13BF C28D CLR TF0(0x88.5)
Memory Map 001: I:0x00 - I:0x7F read write 002: C:0x0000 - C:0xFFFF exec read 003: X:0x000000 - X:0x00FFFF read write
error caused by Timer0 ISR trying to clear the timer overflow flag at TCON^5, when I try to reset Memory to what the User's Guide calls for.
0x000000 - 0x00FFFF read/write this should be IDATA that overlaps the SFR's right? 0x010000 - 0x01FFFF read/write this is XDATA 0xFF0000 - 0xFFFFFF exec read this is CODE
I have try'ed to enter the default map for small memory model using DeBug > Memory Map but keep getting error:invalid address range given.
what could have caused the change in the memory map and how should i change it back, please help
Calvin
I:0x80 [...]this should be the SFR space 0x80 - 0x7F ? as defined by the SMALL memory model right ?
No. The "I:" prefix means it's IDATA, not SFRs. What this means is that your debugger memory map is set up for a real 128-byte RAM 8051 device, but your program was built to run on a bigger (256-byte) variant. One of the two is wrong. You figure out which. Pay special attention to your startup code