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.
When i compile my code in the uvision3 and try to Debug i get the message: Memory Mismatch! Address: 0x00000018 Value = 0x18 Expected = 0xF0 This address corresponds to the code LDR PC, [PC, #-0x0FF0] /* Vector from VicVectAddr */ I'm using ULINK V2.00 and MCB2100 V2
Well, Keil says that the only restriction on evaluation version is the code size, but, like magic, after I register the uvision, the blink example started to run in flash...really strange...but I can't debug my code yet...the same Memory mismatch problem. My startup code is the same as the BlinkIRQ example, and the Flash.ld linker file too...I'm writing in C++ but I can't see how this can be a problem, cause the memory mismatch is on startup code...
At which memory address do you get the mismatch? Is there some hardware behind (like the Vectored Interrupt Controller VIC)? Also there is really no difference (except the code size limit) in the Eval Version.
Usually the error is in the address 0x00000018. Is the VIC address vector... LDR PC, [PC, #-0x0FF0] /* Vector from VicVectAddr */ I use the startup.s file from blink IRQ example cause I use a timer 0 interrupt. Obs: My code is running correctly...All the problem is the debugging
It seems that you have configured the ship for ISP mode (Flash programming via serial interface). For ULINK this mode is not required and you should disable it.
I get some information from LPC2129 USER MANUAL (Chapter 20 - Flash Memory System and Programming): "The flash boot loader code is executed every time the part is powered on or reset. The loader can execute the ISP command handler or the user application code. A LOW level after reset at the P0.14 pin is considered as the external hardware request to start the ISP command handler." With J1 or J7 set I have a HIGH level at the P0.14 pin, so that's not the case. "If there is no request for the ISP command handler execution (P0.14 is sampled HIGH after reset), a search is made for a valid user program. If a valid user program is found then the execution control is transferred to it. If a valid user program is not found, the auto-baud routine is invoked." "...the auto-baud routine synchronizes with the host via serial port 0." There is no program on chip cause JTAG interface is not recognized if I have a code running. "Code read protection is enabled by programming the flash address location 0x1FC (User flash sector 0) with value 0x87654321 (2271560481 Decimal). Address 0x1FC is used to allow some room for the fiq exception handler. When the code read protection is enabled the JTAG debug port, external memory boot and the following ISP commands are disabled..." How can I know if this code protection is enabled or not? If it is can I disable it in my code or in the startup file? The manual tells about bootloader revisions. What I understood is if the revision is earlier than 1.61 there is not support for debugging (if you have the User Manual, see the Boot Process Flowcharts). I'm migrating from another arquitetures and I spending my time with details that I should worry about, cause I'm using a high level language and a IDE... I really think that Keil documentation is terrible and don't really clarify my doubts...that's why I'm using this discussion Forum for so basic problem....
What is your jumper setting? How can we improve our documentation, so that you would understand it better?
I've found the error...Was the PINSEL2 register value.... Well, about the documentation I think there a lot of good things in the web FAQ, but that is not so easy to find a especific problem in tenths of links...The most basic things must be in the help file...In my case I found all my error reading the LPC2129 User Manual, but you should have a help file that explains all the ARM registers configuration and restricted memory locations if there are some if you want to debug. There's a link in the GSA help named "Configuring ARM for ULINK" , but there's no page!!!! I've got the GSA file from keil web site (You can believe me, it's not so easy to find a link for this file, try yourself) and the same page is missing. Maybe was not even written or they forgot to put on the help file... Thanks for the attention!