This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Access Violation

Hi!
I have the lucky task of debugging a C application whose creators have disappeared and left no documentation. When I run the UV3 debugger in simulation mode, I receive an error message :
access violation at C:0xFFF0 no execute/read permission
This occurs because a subroutine directly calls this
area in memory

__API_FLASH_ENTRY_POINT:
  PUSH  AR2
  PUSH  AR4
  PUSH  AR6
  LCALL 0FFF0h
  POP AR6
  POP AR4
  POP AR2
RET

But when I look in the memory map this area is not defined as exec/read. If I reset and then add this area
to the memory map manually, and then run, everything works OK. I don't want to have to load this for every run. Why isn't it being loaded into the memory map by the linker? Any idea why they are using address x'FFF0'
as the flash entry point? Thanks.

Parents
  • Hi,
    Be ensure that the memory region 0x0FFFOh is not in protected area.Could u go through the datasheet and let me know in which region that address presence, it will be helpful to find the cause of the problem.I think even the accessing of the flash protected area will run but the PMI interrupt will occur which is one of the TRAP interrupts.Could you tell me whats the purpose of that asm function in your code.

    Regards,Thangadurai.A

Reply
  • Hi,
    Be ensure that the memory region 0x0FFFOh is not in protected area.Could u go through the datasheet and let me know in which region that address presence, it will be helpful to find the cause of the problem.I think even the accessing of the flash protected area will run but the PMI interrupt will occur which is one of the TRAP interrupts.Could you tell me whats the purpose of that asm function in your code.

    Regards,Thangadurai.A

Children
No data