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

Code doesn't run when built with UVision4

Hello,

I've inherited a project that previously used uVision2 to build code for a Silabs C8051F060 device. The hex file built with uVision2 runs fine on my hardware.

However, when I open the uv2 project file with uVision4 and build, the resulting hex file doesn't run on the hardware. There are no modifications to the code, the only difference is the uvproj file generated by uVision4 and presumably the versions of C51,A51 and BL51.

I'm trying to isolate the actual point of failure in a debugger but haven't had any success yet.

Unfortunately, I don't have access to a copy of uVision2, so I need to get the code working under uVision4.

Are there any compatibility issues between these two versions that I should be aware of, or are there things I should look at that may help isolate the problem?

Parents
  • Any warnings from compiler/assembler/linker?.

    Nothing that is relevant. There are 2 warnings but they relate to a function that definitely hasn't been called before the program fails.

    I made some progress today and it seems to be related to a bootloader. The build is a two stage process. Firstly one set of code (the bootloader) is compiled and linked and the resultant hex file is converted to an assembler file which is then fed as source code for the final full build.
    I was able to get my hands on the assembler file generated by the original toolset and when this is fed in to the second stage, the resulting binary seems to work fine.

    Now I just need to figure out what causes the problem in building the first stage.

    Thanks everyone for your helpful advice.

Reply
  • Any warnings from compiler/assembler/linker?.

    Nothing that is relevant. There are 2 warnings but they relate to a function that definitely hasn't been called before the program fails.

    I made some progress today and it seems to be related to a bootloader. The build is a two stage process. Firstly one set of code (the bootloader) is compiled and linked and the resultant hex file is converted to an assembler file which is then fed as source code for the final full build.
    I was able to get my hands on the assembler file generated by the original toolset and when this is fed in to the second stage, the resulting binary seems to work fine.

    Now I just need to figure out what causes the problem in building the first stage.

    Thanks everyone for your helpful advice.

Children
No data